| 授業の目標と概要 |
| 基礎事項として,ポインタおよび再帰について学習する。次にデータの表現方法や効率の良いアルゴリズムの実装能 |
| 力を身につけるため,基本的かつ代表的なアルゴリズムとデータ構造について学習する. |
|
|
| カリキュラムにおける位置づけ |
| 本科目はプログラミング言語の上位科目,実践プログラミングⅡ・実践プログラミングⅢの下位科目として位置づけ |
| られている. |
|
|
|
| G1.ポインタ |
8 |
| G2.再帰 |
|
| 1.アルゴリズム概要 |
4 |
| ・アルゴリズムとは |
|
| ・データ構造(配列・キュー・スタック・リスト・グラフ・ツリー) |
|
| 2.ソート |
6 |
| ・単純ソート(バブル・選択・挿入・シェーカー) シェルソート |
|
|
|
|
| 3.ソートと探索 |
10 |
| ・クイックソート ・マージソート ・ヒープソート |
|
| ・線形探索/二分探索 |
|
|
|
|
| 4. 文字列検索 |
4 |
| ・直感的な文字列検索 |
|
| ・KMP法 ・BM法 |
|
| 5. 配列とポインタ |
|
| ・構造体とポインタ リスト構造 ・ツリー構造 |
|
| ・ハッシュ |
12 |
|
|
|
| 6. グラフ構造を用いた経路探索 |
8 |
| ・深さ優先探索 ・幅優先探索 |
|
| ・ダイクストラ法 ・フロイド法 |
|
| 7. 基本情報・ソフト開発における「アルゴリズムとデータ構造」 |
4 |
|
|
|
|
|
| 教科書 |
|
| 補助教科書 |
|
| 履修上の注意 |
|
原則として授業の後半でC言語によるプログラミング演習を行なう.課題が授業時間内に終わらないことも予想されるので,自宅にプログラム開発環境を構築することが望ましい.
|
|
| 評価基準 |
|
C言語の文法および基本的なアルゴリズムとデータ構造が理解できており,プログラムを自作できること.
|
|
| 評価法 |
|
| 学習・教育目標 |
東京高専 |
|
JABEE |
|