山梨大学電子シラバス>検索結果一覧>授業データ |
授業科目名
|
担当教員
|
|||||||||||||||||
アルゴリズムとデータ構造演習
|
岩沼 宏治/山本 泰生
|
|||||||||||||||||
時間割番号
|
単位数
|
コース
|
履修年次
|
期別
|
曜日
|
時限
|
||||||||||||
263612 | 1 | G | 2 | 前期 | 火 | IV | ||||||||||||
[概要] | ||||||||||||||||||
本演習では,講義「アルゴリズムとデータ構造」で学ぶ内容に関して,コンピュータを用いた演習と実習を行うことを目的とする.幾つかの重要で具体的なアルゴリズムやデータ構造,及びアルゴリズムに関する一般的な技術を理解した上で,C 言語によって実際にプログラミングすることによって理解を深めさせる.情報処理技術教育の基幹技術として,学生に十分な素養とスキルを持たせることを目標としている.<BR><BR>カリキュラム中での位置付け:<a href="http://www.cs.yamanashi.ac.jp/g/JABEE/curriculum/">Gコースのカリキュラム</a> | ||||||||||||||||||
[具体的な達成目標] | ||||||||||||||||||
本科目を終了した学生は以下の項目を理解して,時間および空間計算量などを念頭においたより良いプログラムが行えるようになる.<BR><BR> ヒープ,ヒープソート,バケットソート,基数ソート,文字列照合,グラフのアルゴリズム(最短経路の探索など),動的計画法,分枝限定法,分割統治法<BR><BR>JABEE 教育プログラムの共通基準のうち,「(c) 自然科学,情報技術に関する知識とそれらを応用できる能力,(d) 該当する分野の専門技術に関する知識とそれらを問題解決に応用できる能力」の二点が修得できる.また,配布した演習問題を自主的に解きまとめることを通じて,「(g) 自主的,継続的に学習できる能力」を修得できる. | ||||||||||||||||||
[必要知識・準備] | ||||||||||||||||||
講義「アルゴリズムとデータ構造」を履修済み,または本授業と同期に履修している必要がある.また,本演習を受講するために次の知識を必要とする.<BR>1.UNIX上でのエディタ,メールなどの基本的ツールの使用法<BR>2.C言語によるコンパイル<BR>3.C言語の基本的文法<BR>4.ポインタの操作<BR>5.構造体の操作 | ||||||||||||||||||
[評価方法・評価基準] | ||||||||||||||||||
|
||||||||||||||||||
[教科書] | ||||||||||||||||||
[参考書] | ||||||||||||||||||
[講義項目] | ||||||||||||||||||
1.文字列照合:力まかせのアルゴリズム<BR> 2.文字列照合:Boyer-Moore 法<BR> 3.オンライン試験1及び総括評価<BR> 4.ヒープソート<BR> 5.バケットソート,基数ソート<BR> 6.ヒープソート,基数ソート演習<BR> 7.オンライン試験2及び総括評価<BR> 8.グラフの問題:ダイクストラの最短経路探索アルゴリズム(1)<BR> 9.グラフの問題:ダイクストラの最短経路探索アルゴリズム(2)<BR>10.オンライン試験3及び総括評価<BR>11.動的計画法:0−1ナップザック問題<BR>12.分枝限定法:0−1ナップザック問題,レポート課題1<BR>13.分割統治法:長大数の乗算 (1)<BR>14.分割統治法:長大数の乗算 (2),レポート課題2<BR>15.復習とまとめ | ||||||||||||||||||
[教育方法] | ||||||||||||||||||
・プログラムを組む能力が身に付いているか判定するために,3回のオンライン試験を実施する.オンライン試験では時間内に所定の仕様を満たすプログラムの作成に取り組む.<BR>・本演習では3回のオンライン試験と2回のレポート課題を実施する.その評価においては,なるべく細かくコメントを付けて不具合のポイントなどを提示する.これによりプログラミング能力の向上,理解の促進が期待できる.<BR>・C言語の理解が不足している学生がいれば,随時C言語に関する解説も行う. | ||||||||||||||||||
[JABEEプログラムの学習・教育目標との対応] | ||||||||||||||||||
|
||||||||||||||||||
[その他] | ||||||||||||||||||
初回授業までにC言語の復習を行うこと |