データ構造とアルゴリズム(水4) 2007年度版

last update 2007/8/10

2007年度、安藤先生と共に担当することになりました。よろしくお願いします。

資料のアクセスにはパスワードが必要な場合があります。バスワードはこちらで取得してください。

アルゴリズム演習のホームページはこちらです。


注意事項

授業の目標

  1. 配列、構造体、スタック、キュー、木構造、リスト、ハッシュという基本的なデータ構造について特徴や利点欠点を説明できる。
  2. これらのデータ構造に対するデータの追加削除、検索の効率的なやり方を説明できる。
  3. データのソーティングについて複数のアルゴリズムとそれらの利点欠点を説明できる。
  4. アルゴリズムのオーダー(データ量が増えた場合にアルゴリズムの効率がどのように変化するかということ)について、考え方と例を説明できる。

講義予定/経過

回数
講義日
予定内容
理解目標
備考、進捗状況など
1
4/11
オリエンテーションと一年次の復習 本講義の流れと概要の説明。整数、浮動小数点数、文字などC言語で使われる基本データ型の確認。  
2
4/18
配列 配列の概念と検索方法(線形探索、二分探索)、データ変更の仕方、単純なソート等を理解する。  
3
4/25
構造体 C言語で使われる複合データである構造体について概念と意義を理解する。  
4
5/2
ポインタ C言語におけるポインタの概念について理解する。 小テスト実施(範囲:配列と構造体)
5
5/9
リスト(1) ポインタの応用例として、リストデータ構造と、リストへのデータ挿入削除の方法について理解する。  
6
5/16
リスト(2) (訂正版をアップ) リストのさらに複雑な例として双方向リストとその応用例を理解する。 小テスト実施(範囲:ポインタ、リスト(1))
7
5/23
キューとスタック キューとスタックの概念を理解する。  
 
5/30
    百日咳のため休講
8
6/6
再帰 スタックを利用して行える再帰呼出について理解する。  
9
6/13
木構造 データを木状につなぎあわせるデータ構造について、その特徴、利用法、代表的なアルゴリズムについて理解する。  
10
6/20
二分木探索、木構造を利用した再帰アルゴリズムなどについて理解する。 小テスト実施(範囲:キューとスタック、再帰)
別掲の式計算プログラム
11
6/30
ソーティング ソーティングのアルゴリズムについて、効率の異なる複数の方法(バブルソート、クイックソート)を理解する。 注:6/27 は月曜時間割になります
6/30 は 5/30 の補講
12
7/4
ハッシュ ハッシュの概念と代表的なアルゴリズムについて理解する。 7/4 は安藤が担当
13
7/11
問題演習 本講義の内容に関連して情報処理技術者試験に出題された問題により演習を行い、理解を深める。 7/11 は安藤が担当
小テスト実施(範囲:木構造、クイックソート)
14
7/18
アルゴリズムのオーダー アルゴリズムのオーダーについて、その概念と表現方法を理解する。  
15

7/25

期末試験   8/1 の予定でしたが変更します。5コマ目に、3301教室。

再履修コース (8/7-10)

再履修コース用の講義資料は以下の通りです。内容は基本的なものを厳選しています。

配列ポインタリストキューとスタック再帰木構造ハッシュソーティングアルゴリズムのオーダー

教科書

「C言語によるはじめてのアルゴリズム入門」 (技術評論社) 河西朝雄 著