到達目標
様々なデータ構造を理解し、それらを用いたプログラムが書ける。
様々なアルゴリズムを理解し、それらを用いたプログラムが書ける。
計算量を理解し、計算量を考慮したプログラムが書ける。
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
評価項目1 | 様々なデータ構造を十分に理解し、それらを適切に用いたプログラムが書ける。 | 様々なデータ構造を理解し、それらを用いたプログラムが書ける。 | 様々なデータ構造を用いたプログラムが書けない。 |
評価項目2 | 様々なアルゴリズムを十分に理解し、それらを適切に用いたプログラムが書ける。 | 様々なアルゴリズムを理解し、それらを用いたプログラムが書ける。 | 様々なアルゴリズムを用いたプログラムが書けない。 |
評価項目3 | 計算量を十分に理解し、計算量を十分に考慮したプログラムが書ける。 | 計算量を理解し、それらを考慮したプログラムが書ける。 | 計算量を考慮したプログラムが書けない。 |
学科の到達目標項目との関係
教育方法等
概要:
基本的なデータ構造とアルゴリズムの理解を通して、プログラミングスキルの向上を目指す中で、科目「データ構造アルゴリズム」に対応したプログラムを作成する。同時に計算量についても考慮したプログラム作成を行う。
授業の進め方・方法:
科目「データ構造アルゴリズム」と連動しており、本授業は演習メインにて進める。科目「データ構造アルゴリズム」にて確認した内容を本講義にて作成するが、本講義がデータ構造とアルゴリズムの説明の時間になる可能性もあることを考慮しておいて欲しい。
注意点:
中間試験・定期試験では、各種問題に対応したプログラムをどのようなアルゴリズムとデータ構造を用いて作成するかを設計できる能力、そして実際に作成する能力が必要である。
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
構造体の復習と連結リスト構造のプログラムの作成1 |
構造体と連結リスト構造のプログラムを作成できる
|
2週 |
構造体の復習と連結リスト構造のプログラムの作成2 |
構造体と連結リスト構造のプログラムを作成できる
|
3週 |
構造体の復習と連結リスト構造のプログラムの作成3 |
構造体と連結リスト構造のプログラムを作成できる
|
4週 |
スタックのプログラムの作成 |
スタックをプログラムにて実現できる
|
5週 |
スタックの応用事例のプログラムの作成 |
スタックの応用事例をプログラムにて実現できる
|
6週 |
キューのプログラムの作成 |
キューをプログラムにて実現できる
|
7週 |
キューの応用事例のプログラムの作成 |
キューの応用事例をプログラムにて実現できる
|
8週 |
中間試験 |
リスト、スタック、キューを用いたプログラムを作成できる
|
2ndQ |
9週 |
中間試験を振り返る |
リスト、スタック、キューのプログラム作成についての理解を深める
|
10週 |
循環リスト、双方向リストのプログラムの作成 |
循環リスト、双方向リスト用いたプログラムを作成できる
|
11週 |
双方向リストの応用事例のプログラムの作成 |
双方向リストの応用事例のプログラムを作成できる
|
12週 |
基本的なソートとそのオーダーを理解し、プログラムを作成する |
基本的なソートとオーダーを理解し、そのプログラムを作成できる
|
13週 |
基本的な探索とそのオーダー |
基本的な探索とオーダーを理解し、そのプログラムを作成できる
|
14週 |
総合的な課題のプログラム作成に取り組む1 |
総合的な課題のプログラム作成に取り組み理解を深める
|
15週 |
総合的な課題のプログラム作成に取り組む2 |
総合的な課題のプログラム作成に取り組み理解を深める
|
16週 |
|
|
後期 |
3rdQ |
1週 |
再帰のプログラム作成 |
再帰を用いたプログラムを作成できる
|
2週 |
二分探索木のプログラム作成1 |
二分探索木のプログラムを作成できる
|
3週 |
二分探索木のプログラム作成2 |
二分探索木のプログラムを作成できる
|
4週 |
二分探索木のプログラム作成3 |
二分探索木のプログラムを作成できる
|
5週 |
クイックソートのプログラム作成 |
クイックソートのプログラムを作成できる
|
6週 |
ハッシュ法のプログラム作成1 |
ハッシュ法のプログラムを作成できる
|
7週 |
ハッシュ法のプログラム作成2 |
ハッシュ法のプログラムを作成できる
|
8週 |
中間試験 |
再帰、二分探索木、クイックソート、ハッシュ法が理解できる
|
4thQ |
9週 |
中間試験を振り返る |
再帰、二分探索木、クイックソート、ハッシュ法の理解を深める
|
10週 |
ハッシュ法のプログラム作成3 |
ハッシュ法のプログラムを作成できる
|
11週 |
文字列探索のプログラム作成 |
文字列探索のプログラムを作成できる
|
12週 |
ビンソート、分布数え上げソートのプログラム作成 |
ビンソート、分布数え上げソートのプログラムを作成できる
|
13週 |
基数ソートのプログラム作成 |
基数ソートのプログラムを作成できる
|
14週 |
総合的な課題のプログラム作成に取り組む3 |
総合的な課題のプログラム作成に取り組み理解を深める
|
15週 |
総合的な課題のプログラム作成に取り組む4 |
総合的な課題のプログラム作成に取り組み理解を深める
|
16週 |
|
|
評価割合
| 試験 | 課題 | 相互評価 | 態度 | ポートフォリオ | その他 | 合計 |
総合評価割合 | 100 | 0 | 0 | 0 | 0 | 0 | 100 |
基礎的能力 | 80 | 0 | 0 | 0 | 0 | 0 | 80 |
専門的能力 | 20 | 0 | 0 | 0 | 0 | 0 | 20 |
分野横断的能力 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |