同じことをするプログラムでも、データの持ち方や処理の方法によって実行速度が全く異なります。
プログラムが重いとちょっと使いづらい…という印象になってしまいますよね。
このレッスンでは「データ構造とアルゴリズム」を学ぶことで以下の2点について考えたいと思います。
- プログラムの速度は何によって決まるのか。
- データの持ち方がプログラムにどのようなインパクトを与えるのか。
ソート(並べ替え)
- selection sort
- merge sort
- quick sort
- 線形探索
- 二分探索
- Hash Table(リストデータ構造による実装, Probing法, ハッシュ関数)
- 二分探索木
- AVL木
- B tree
【事前知識】
レッスンではPythonを使います。Pythonの基本文法として最低でも関数とクラスは理解しておいてください。Python初級のレッスンもご用意しております。
【その他】
- 単発レッスンもご用意しております。
- 初めての方は「はじめましてレッスン」のご受講をお願いいたします。
***neun