情報 データ構造とアルゴリズム 4年・通年・選択・履修1単位
担当教員 弘畑 和秀 連絡先 
講義の概要 アルゴリズムの設計と解析に必要な、データ構造とアルゴリズムの基礎について学ぶ。
到達目標 1. アルゴリズムとは何か、データ構造としてどのようなものがあるかを理解する。
2. 実例を通して基本的なアルゴリズムとデータ構造の設計・評価方法を学ぶ。
日程授業項目理解すべき内容 理解度
(1~4)
前期 第1週 データ構造とアルゴリズム 理論の背景と役割  
第2週 プログラムにおけるアルゴリズム 処理手順を考えプログラムにする方法の概要  
第3週 プログラムにおけるデータ構造 データの構造を考えプログラムとして実現することの意味  
第4週 メモリとデータ 主記憶装置とそこに格納されるデータの仕組み  
第5週 内部表現(1) コンピュータ内部における数値の表現方法  
第6週 内部表現(2) ポインタの役割,コンピュータ内部における表現方法  
第7週 (中間試験)  
第8週 基本データ構造(1) 配列の考え方,表現方法と活用  
第9週 基本データ構造(2) ポインタを利用したデータ構造と処理方法  
第10週 整列(1) 整列の基礎,バブルソート  
第11週 整列(2) クイックソート  
第12週 整列(3) マージソート  
第13週 整列(4) ヒープ構造の考え方,整列での利用(ヒープソート)  
第14週 整列(5) 計算時間の比較や評価  
第15週 (期末試験)  
第16週 総復習  
後期 第1週 リスト構造(1) リストの考え方,実現方法  
第2週 リスト構造(2) スタックの仕組みと利用例  
第3週 リスト構造(3) キューの仕組みと利用例  
第4週 グラフの表現(1) グラフ情報を表現するためのデータ構造  
第5週 グラフの表現(2) 様々なグラフの表現  
第6週 グラフの表現(3) グラフ表現を活用した事例  
第7週 (中間試験)  
第8週 検索(1) 検索の基礎,検索機能の社会的役割  
第9週 検索(2) 線形探索  
第10週 検索(3) 二分探索  
第11週 検索(4) 二分探索木の考え方,仕組み  
第12週 検索(5) 二分探索木の実現方法  
第13週 検索(6) 幅優先探索と深さ優先探索の考え方  
第14週 その他のデータ構造とアルゴリズム ハッシュテーブル  
第15週 (期末試験)  
第16週 総復習  
履修上の注意 講義の基本的に演習室で行うので、指定の演習室に直接来ること。
学習教育目標 A,Bに対応 達成項目本科イ)、ロ)に対応 JABEE
認定基準
(A-2),(B-1),(d)-(1),(d)-(2)-a)に対応
教科書・参考書 プリントを配布する。
評価方法及び合格基準 成績の評価は、定期試験で行い、平均の成績が60点以上の者を合格とする。
学生への
メッセージ
アルゴリズムとデータ構造の役割と基本を学びます。より適切なプログラムを作るために必要な考え方なので、本講義や演習から積極的に学びとってください。講義ノートの内容を見直し、講義に関係する例題・演習問題を解いておくこと。講義で示した次回予定の部分を予習しておくこと。