山梨大学電子シラバス>検索結果一覧>授業データ |
授業科目名
|
担当教員
|
|||||||||||||||||||||
アルゴリズムとデータ構造I演習
|
盧 暁南
|
|||||||||||||||||||||
時間割番号
|
単位数
|
コース
|
履修年次
|
期別
|
曜日
|
時限
|
||||||||||||||||
TCS208 | 1 | (未登録) | 2 | 前期 | 火 | II | ||||||||||||||||
[概要] | ||||||||||||||||||||||
本演習では,講義「アルゴリズムとデータ構造I」で学ぶ内容に関して,コンピュータを用いた演習を行うことを通して,いくつかの重要で具体的なアルゴリズムやデータ構造,及びアルゴリズムに関する一般的な技術の理解を深めさせる.また,C++言語によって実際にアルゴリズムやデータ構造を実装する能力を身につける. | ||||||||||||||||||||||
[具体的な達成目標] | ||||||||||||||||||||||
1. データ構造,オブジェクト指向プログラミングについて説明できること. 2. 二分探索,貪欲法,再帰と分割統治法などのアルゴリズム手法について説明できること. 3. 以下の4つの具体的なアルゴリズムやデータ構造について,プログラムを実装できること. (1) 二分木とその応用(平衡木,プライオリティキュー等) (2) ハッシュ表とその応用 (3) グラフアルゴリズム(最小スパニング木,最短経路,トポロジカルソート等) (4) 文字列照合 |
||||||||||||||||||||||
[必要知識・準備] | ||||||||||||||||||||||
「プログラミング基礎」および「同演習」並びに「プログラミング応用」および「同演習」を履修済みで (単位取得が望ましい),C++言語の基本的知識とプログラミング技術を修得していること.履修にあたっては,上記の先行科目で学習した内容を必ず復習しておくこと. | ||||||||||||||||||||||
[評価方法・評価基準] | ||||||||||||||||||||||
|
||||||||||||||||||||||
[教科書] | ||||||||||||||||||||||
[参考書] | ||||||||||||||||||||||
|
||||||||||||||||||||||
[講義項目] | ||||||||||||||||||||||
第1回:プログラミング応用の復習 第2回:二分木の基礎 第3回:二分木の応用(1)(平衡木) 第4回:二分木の応用(2)(プライオリティキュー) 第5回:中間評価1 第6回:標準テンプレートライブラリの利用 第7回:ハッシュ表(1)(分離チェイン法,ハッシュ関数の設計) 第8回:ハッシュ表(2)(開番地法,ハッシュ表の拡大) 第9回:中間評価2 第10回:グラフの表現とグラフの探索 第11回:最小スパニング木 第12回:最短経路問題 第13回:トポロジカルソートとクリティカルパス問題 第14回:文字列照合 第15回:最終評価とまとめ |
||||||||||||||||||||||
[教育方法] | ||||||||||||||||||||||
本演習は,Zoom を用いたライブ型配信および Moodle を併用したオンライン方式で実施する.授業の冒頭に演習内容の概要および課題について説明し,その後は演習形式で進める.演習課題の配布と答案の提出は,本科目の Moodle ページに行う.また,講義「アルゴリズムとデータ構造I」との連携を重視する. | ||||||||||||||||||||||
[JABEEプログラムの学習・教育目標との対応] | ||||||||||||||||||||||
(未登録) | ||||||||||||||||||||||
[その他] | ||||||||||||||||||||||
(未登録) |