AIありの開発でもデータ構造とアルゴリズムの基本は必要という前提と、初心者向けの本を1周やるだけの勉強法について書きます。
まんじです〜
今回はデータ構造とアルゴリズムの基礎的なインプットはこの本一周でOKっていうテーマで書こうかと思います。
結論、この本に載ってる基本的なデータ構造とアルゴリズムを一周パラパラ読んで、コードをPythonで真似して書いてみるだけで、最低限のインプットとしては十分だと思ってます。
1. 前提:AIありの開発でもデータ構造とアルゴリズムの基本は必要
前提条件として、AIありの開発でもなんだかんだでデータ構造とアルゴリズムの基本は必要なのは否定できないですね。
特に採用がちょっと高いような会社だと、やっぱりコーディング試験とかも普通にあります。
あとは会社側から見た時に、基礎力であったりベースラインがちゃんと整ってる人がAIを使って開発する方が、生産性が出るっていうところもあったりします。
直接的にめちゃくちゃ実力が上がるわけでもないんですけど、間接的にやっぱり実力がすごい上がるんで、そこら辺でやっぱ必要っていう感じです。
2. この本に載ってる基本的なデータ構造とアルゴリズムの一覧
この本に書かれてる基本的なデータ構造とアルゴリズムを簡単に列挙して、それが半分わからない感じだったらやった方がいいかなという感じです。
列挙すると、
- データ構造でキューとスタック
- アルゴリズムでバイナリーサーチ
- データ構造で言うと木構造であったり、ツリー構造みたいな感じ
- データ構造でグラフ
- 計算量の表記法で、オーの2乗みたいなやつ
- アルゴリズムでバブルソートとかクイックとかマージとか
- ヒープっていうやつ(僕もヒープよくわかってないですね)
- 動的計画法
こういった単語が今列挙した中にあったと思うんですけど、これを大体5割ぐらい知ってるぐらいの人は、別にやんなくてもいいかなっていう感じです。
3. 5割も知らないなら、このPythonの本を1周やった方がいい
一方で5割も知らんと、そもそも1個も2個も知らんみたいな感じであれば、このPythonの本を1周ぐらいは個人的にはやった方がいいのかなっていう印象すね。
ちなみに本は『Pythonで学ぶアルゴリズムとデータ構造 徹底理解』ってやつです。
4. 本の1周のやり方
こっからこの本の1周のやり方について解説していこうかなと思うんですけど、例えばこういうキューっていうのがあって、っていうのはデータ構造なんですけど、このキューの解説とかスタックの解説とかそういうのがあったりするんですね。
それを適当にパラっと読んで、「ちょろいな」みたいな。
そんな感じで適当にパラパラと読みつつ、感じで適当にインプットをして、ある程度適当にインプット終わったら、コードがPythonで書かれてるんで、それを適当に真似してやってやるみたいな感じの流れで1周やればいいかなっていう風な印象すね。
ちなみに自分もこれを解説してるんですけど、大体8割ぐらいしか分からないかなっていう印象ね。
そんな感じのインプットと適当に書いて真似する作業を大体1周ぐらいやればオッケーです。
ちなみにこれPythonなんで、「Pythonはもう要らねえ」みたいな風に思ってる人もいるかもしれないんですけど、実際でもこれTypeScriptかければ別にPythonはかけるんで、なんで別にあんま言語の差分はほぼないかなっていう印象すね。
あと他にやり方にコツがあるとしたら、あんまり完璧にやりすぎないことすね。
5. インプットが終わったらpaizaやAtCoderで演習
適当に最低限のインプットをして、そっからAtCoderとかであったり、あのpaizaで大体BランクとかAランクとか、そこら辺を練習問題で解いていけばいいような感じです。
実務入る前だと、ある程度適当にやるぐらいでいいと思います。
その1日1時間だけとかそんな感じでいいと思います。
まんじからの感想
最後にこの本の感想を適当に言っていきたいんですけど、個人的には実務入る前とかだったらやっぱ普通にやった方がいいなっていう風に思ってますね。
動画の冒頭でも話してるんですけど、やると直接的にめちゃめちゃ実力が伸びるとかそういうわけではないんですけど、なんだかんだ言ってもベースラインというか基礎力の向上にめちゃくちゃ繋がるなっていう風に個人的には思ってるのと、あとコーディング試験とかで結構なんか意外と役に立つみたいないうこともなくはなかったりします。
なんか改めて今自分もパラパラとめくって読んでみたんですけど、ぶっちゃけ勉強すんのくそめんどくせえなっていう風に思うんですけど、ただ絶対無駄にはならないのは、ほぼ否定できんところかなっていう風に思うんで、とりあえずデータ構造とアルゴリズム全くインプットないよっていう人は、これ1周ぐらいやってみると、まんじ推奨マジですね。
自分も7割から8割ぐらいしか知らんすね、そもそもっていう感じなんで、ある程度適当にやるといいんじゃないかなっていう風に思います。
値段が大体2,720円+税なんで、意外と高けえなっていう、技術書は案外高いすね。
ただこれで最低限のインプットは普通にできると思うんで、いいんじゃないかと思います。
LVLPATHの未経験からの講座買ってもらって手順通りやってもらって自分に壁打ちやら質問してもらえれば、こういうデータ構造とアルゴリズムの勉強も含めて、普通にやるよりは早いと思います。
ってことで終わりです。




