概要:
本授業では,典型的、重要なアルゴリズムやデータ構造,及びアルゴリズムに関する重要な概念や技法、またアルゴリズムを実現するプロセスを理解させ、情報工学・情報科学の基幹技術について素養とスキルを持たせることを目標とする。
授業の進め方・方法:
教科書に基づいた講義は主である。授業内容の進行に伴い試問や問題解説を行う。授業外の課題や練習問題を課す。
注意点:
授業の前に授業内容を予習し、専門用語の意味等を理解しておくこと。
中間試験(40%)、期末試験(60%)の総合成績で評価を行う。
総合成績が60点以上を合格とする。総合成績が60点未満の学生には1回再試験を設ける。
再評価試験は、全範囲として100点満点で60点以上を合格とし、60点とする。
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
アルゴリズムとアルゴリズムの性能評価・計算量・O記法 |
アルゴリズムとアルゴリズムの性能評価・計算量・O記法を理解できる。
|
2週 |
データの構造及び表現法 |
データの構造及び表現法を理解できる。
|
3週 |
配列による順配置、ポインタによるリンク配置 |
配列による順配置、ポインタによるリンク配置の概念を理解でき、応用できる。
|
4週 |
順配置によるリスト、ポインタによる連結リストの実現 |
順配置によるリスト、ポインタによる連結リストの実現を理解でき、応用できる。
|
5週 |
双方連結リスト |
双方向連結リストを理解でき、応用できる。
|
6週 |
スタックのデータ構造と実現 |
スタックのデータ構造と実現を理解でき、応用できる。
|
7週 |
キューのデータ構造と実現、リンクバッファーによるキューの実現 |
キューのデータ構造と実現、リンクバッファーによるキューの実現を理解でき、応用できる。
|
8週 |
木の概念、2分木、2分木の表現と走査 |
木の概念、2分木、2分木の表現と走査を理解でき、応用できる。
|
2ndQ |
9週 |
数式を表す木、木の表現 |
数式を表す木、木の表現を理解でき、応用できる。
|
10週 |
線形探索、2分探索、ハッシュ法 |
線形探索、2分探索、ハッシュ法を理解でき、応用できる。
|
11週 |
文字列の探索 |
文字列の探索を理解でき、応用できる。
|
12週 |
木の探索、2分探索木、B木 |
木の探索、2分探索木、B木を理解でき、応用できる。
|
13週 |
選択によるソート、交換によるソート |
選択によるソート、交換によるソートを理解でき、応用できる。
|
14週 |
挿入によるソート、併合によるソート |
挿入によるソート、併合によるソートを理解でき、応用できる。
|
15週 |
外部ソート |
外部ソートの概念と方法を理解でき、応用できる。
|
16週 |
|
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
専門的能力 | 分野別の専門工学 | 情報系分野 | ソフトウェア | アルゴリズムの概念を説明できる。 | 4 | |
与えられたアルゴリズムが問題を解決していく過程を説明できる。 | 4 | |
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。 | 4 | |
時間計算量によってアルゴリズムを比較・評価できることを説明できる。 | 4 | |
領域計算量などによってアルゴリズムを比較・評価できることを説明できる。 | 4 | |
整列、探索など、基本的なアルゴリズムについて説明できる。 | 4 | |
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。 | 4 | |
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。 | 4 | |
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。 | 4 | |
リスト構造、スタック、キュー、木構造などの基本的なデータ構造を実装することができる。 | 4 | |
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。 | 4 | |
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。 | 4 | |