| 1 | タイトル | 値渡しと参照渡し,クラスとオブジェクト | 
|---|
事前学習 事後学習 | 事前学習:C++の制御構文,クラスの定義方法を復習しておくこと.また教科書1章を読んでおくこと
 事後学習:間違ったプログラムについて「何がどのように間違っているのか」指摘できるようになること | 
|---|
| 授業内容 | C++言語の復習を,「画面に図形を出力するプログラムの作成」や「間違ったプログラムの間違いを指摘」することを通して行う | 
|---|
| 2 | タイトル | ポインタと配列 | 
|---|
事前学習 事後学習 | 事前学習:教科書2章~2.2.1節まで読んでおくこと.ポインタについて参考書「やさしいC++」で復習しておくこと
 事後学習:講義で示したプログラムを実際に動作させ,ポインタの理解を深めること | 
|---|
| 授業内容 | ポインタとは何か,ポインタの利用方法,ポインタと配列の関係を理解する | 
|---|
| 3 | タイトル | ポインタとメモリの動的割当,可変長配列 | 
|---|
事前学習 事後学習 | 事前学習:教科書2.2.2節を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,メモリの動的割当の理解を深めること | 
|---|
| 授業内容 | ポインタと参照の違い,メモリの動的確保,クラステンプレートを理解する | 
|---|
| 4 | タイトル | 連結リスト | 
|---|
事前学習 事後学習 | 事前学習:教科書2.3節を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,連結リストの理解を深めること | 
|---|
| 授業内容 | アロー演算子,連結リストを理解する | 
|---|
| 5 | タイトル | 連結リストとスタック,キュー | 
|---|
事前学習 事後学習 | 事前学習:教科書2.4節(配列によるキューの実装の手前まで)を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,継承やスタック,キューについて理解を深めること | 
|---|
| 授業内容 | スタックとキューとは何か,リストによるスタックとキューの実現方法を理解する  | 
|---|
| 6 | タイトル | 配列とスタック,キュー | 
|---|
事前学習 事後学習 | 事前学習:教科書2.4節(配列によるキューの実装以降)を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,継承やスタック,キュー(リングバッファ)について理解を深めること | 
|---|
| 授業内容 | スタックとキュー(リングバッファ)の配列による実現方法を理解する | 
|---|
| 7 | タイトル | 木構造と木のなぞり | 
|---|
事前学習 事後学習 | 事前学習:教科書2.5節([3] スタックとキューによる木のなぞりまで)を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,木構造とそのなぞりについて理解を深めること | 
|---|
| 授業内容 | 木構造とその実現方法,木のなぞり方を理解する | 
|---|
| 8 | タイトル | 中間評価(総括とまとめ) | 
|---|
事前学習 事後学習 | 事前学習:過去の試験問題を公開するのでそれに各自取り組み,解けるようになっておくこと
 事後学習:自身の解答が適切であったかどうか,プログラムを実際に動作させるなどして検証すること | 
|---|
| 授業内容 | 講義前半の内容を総括し,その理解度を試験により評価する | 
|---|
| 9 | タイトル | 再帰呼び出し | 
|---|
事前学習 事後学習 | 事前学習:教科書2.5節([4] 再帰呼び出しによる木のなぞり)を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,再帰呼び出しの動作について理解を深めること | 
|---|
| 授業内容 | 再帰呼び出しの概念を理解し,再帰呼び出しが実装できること | 
|---|
| 10 | タイトル | 再帰呼び出しによる木のなぞり | 
|---|
事前学習 事後学習 | 事前学習:教科書2.5節([4] 再帰呼び出しによる木のなぞり)を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,再帰による木のなぞりや木に対する各種操作について理解を深めること | 
|---|
| 授業内容 | 再帰呼び出しが実装でき,再帰による木のなぞりの実装方法を理解する | 
|---|
| 11 | タイトル | 計算量 | 
|---|
事前学習 事後学習 | 事前学習:教科書3.1節を読んでおくこと
 事後学習:レポート課題を通して計算量の漸近的評価について理解を深めること | 
|---|
| 授業内容 | 計算量の概念を理解し,基本的なアルゴリズムの計算量を示すことができること | 
|---|
| 12 | タイトル | 線形探索と二分探索 | 
|---|
事前学習 事後学習 | 事前学習:教科書3.2節, 3.3節を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,線形探索と二分探索の速度差について問題の大きさを変化させながら評価すること | 
|---|
| 授業内容 | 線形探索と二分探索の特徴,利点,欠点を理解する | 
|---|
| 13 | タイトル | 素朴な整列アルゴリズムと再帰的整列アルゴリズム | 
|---|
事前学習 事後学習 | 事前学習:教科書3.4節,3.5節を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,各ソートアルゴリズムについて理解を深めるとともに,問題の大きさを変化させながら速度差を評価すること | 
|---|
| 授業内容 | 選択ソート,挿入ソート,マージソート,クィックソート,外部ソートのアルゴリズムと,その利点・欠点を理解する | 
|---|
| 14 | タイトル | 空間を利用した整列アルゴリズム | 
|---|
事前学習 事後学習 | 事前学習:教科書3.6節を読んでおくこと
 事後学習:講義で示したプログラムを実際に動作させ,各ソートアルゴリズムについて理解を深めるとともに,問題の大きさを変化させながら速度差を評価すること | 
|---|
| 授業内容 | バケットソート,計数ソート,基数ソートのアルゴリズムと,その利点・欠点を理解する | 
|---|
| 15 | タイトル | 最終評価(総括とまとめ) | 
|---|
事前学習 事後学習 | 事前学習:過去の試験問題を公開するのでそれに各自取り組み,解けるようになっておくこと
 事後学習:自身の解答が適切であったかどうか,プログラムを実際に動作させるなどして検証すること | 
|---|
| 授業内容 | 講義全体(主として後半)の内容を総括し,その理解度を試験により評価する | 
|---|
| 16 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 17 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 18 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 19 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 20 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 21 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 22 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 23 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 24 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 25 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 26 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 27 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 28 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 29 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|
| 30 | タイトル |  | 
|---|
事前学習 事後学習 |  | 
|---|
| 授業内容 |  | 
|---|