| 授業の目標と概要 |
| データの表現方法や効率の良いアルゴリズムの実装能力を身につけるため,基本的かつ代表的なアルゴリズムとデータ |
| 構造について学習する. |
|
|
| カリキュラムにおける位置づけ |
| 本科目はプログラミング言語の上位科目,実践プログラミングⅡ・実践プログラミングⅢの下位科目として位置づけら |
| れている. |
|
|
|
| 1.アルゴリズム概要 |
12 |
| ・アルゴリズムとは |
|
| ・データ構造(配列・キュー・スタック・構造体・リスト・グラフ・ツリー) |
|
| ・再帰 |
|
|
|
| 2.ソートと探索 |
6 |
| ・単純ソート(バブル・選択・挿入・シェーカー) |
|
| ・シェルソート |
|
|
|
|
| 2.ソートと探索 |
10 |
| ・クイックソート |
|
| ・マージソート |
|
| ・線形探索/二分探索 |
|
| ・ヒープソート |
|
|
|
|
| 3. 文字列検索 |
4 |
| ・直感的な文字列検索 |
|
| ・KMP法 |
|
| ・BM法 |
|
|
|
| 4. 配列とポインタ |
12 |
| ・ポインタの基本 |
|
| ・文字列処理 |
|
| ・関数ポインタ |
|
| ・構造体とポインタ |
|
| ・ハッシュ |
|
| ・ツリー構造 |
|
|
|
|
| 5. グラフ構造を用いた経路探索 |
8 |
| ・深さ優先探索 |
|
| ・幅優先探索 |
|
| ・ダイクストラ法 |
|
| ・フロイド法 |
|
|
|
| 6. 基本情報・ソフ開における「アルゴリズムとデータ構造」 |
4 |
|
|
|
|
|