到達目標
・各種ソートの特性を理解し,標準的な課題プログラムを作成することができる.
・二分探索木の巡回プログラムを理解し,作成することができる.
ルーブリック
| 理想的な到達レベルの目安 | 標準的な到達レベルの目安 | 未到達レベルの目安 |
ソート | 与えられた課題に対して,適切なプログラムを作成することができる. | 各種ソートの特性を理解し,標準的な課題プログラムを作成することができる. | 各種ソートについて理解できない. |
二分探索木 | 二分探索木を定義し,挿入,探索,削除機能を実装することができる. | 二分探索木の巡回プログラムを理解し,作成することができる. | 二分探索木を理解できない. |
学科の到達目標項目との関係
教育方法等
概要:
アルゴリズムの概要と計算効率の概念を理解し,汎用的なアルゴリズムとデータ構造に関して実際にプログラムを作成し動作を確認しながら学習する.
授業の進め方・方法:
テキストによる解説の後,実際にプログラムを作成し動作を確認する.その後オンラインジャッジの課題のプログラムを作成する.
注意点:
C言語の基本的な知識が要求される.必要に応じてC++にも触れる.
授業計画
|
|
週 |
授業内容 |
週ごとの到達目標 |
後期 |
3rdQ |
1週 |
再帰関数 |
再帰関数の概念を理解し,課題プログラムを作成することができる.
|
2週 |
分割統治法 |
分割統治法の概念を理解し,課題プログラムを作成することができる.
|
3週 |
全探索 |
再帰を用いて全探索を行うプログラムを作成することができる.
|
4週 |
マージソート |
マージソートのアルゴリズムを理解し,課題プログラムを作成することができる.
|
5週 |
パーティション
|
配列のパーティションを行うプログラムを作成することができる.
|
6週 |
クイックソート
|
クイックソートのアルゴリズムを理解し,課題プログラムを作成することができる.
|
7週 |
計数ソート |
計数ソートのアルゴリズムを理解し,課題プログラムを作成することができる.
|
8週 |
中間試験 |
|
4thQ |
9週 |
木構造 |
効率的なアルゴリズムとデータ構造を実装するための基礎としての木構造を理解することができる.
|
10週 |
二分木 |
二分木のプログラムを作成することができる.
|
11週 |
木の巡回 |
二分木を体系的に巡回するプログラムを作成することができる.
|
12週 |
二分木探索木:挿入 |
二分探索木に新たに値を挿入するプログラムを作成することができる.
|
13週 |
二分木探索木:探索 |
二分探索木から与えられたキーを持つ接点を探索するプログラムを作成することができる.
|
14週 |
二分木探索木:削除 |
二分探索木から与えられたキーを持つ接点を削除するプログラムを作成することができる.
|
15週 |
定期試験 |
|
16週 |
答案返却 |
|
モデルコアカリキュラムの学習内容と到達目標
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
評価割合
| 試験 | 課題 | 合計 |
総合評価割合 | 50 | 50 | 100 |
基礎的能力 | 10 | 10 | 20 |
専門的能力 | 40 | 40 | 80 |
分野横断的能力 | 0 | 0 | 0 |