このサイトではJavaScriptを使用したコンテンツ・機能を提供しています。JavaScriptを有効にするとご利用いただけます。
本文へスキップします。
検索結果に戻る
重井徳貴
優れたコンピュータプログラムは理解し易く、実行効率も高いが、そうでないものは理解も困難な上に、時間やメモリを浪費する。そのようなプログラムは、論理ミスも多くなる。ここでは、個々のプログラム言語に依存しない、良いプログラムを書くために理解しておかなければならない基礎的事項を講義する。 まず、アルゴリズムやデータ構造の適切な選び方によって、プログラムの実行時間や作りやすさがが大きく変化することを知る。次に代表的な量によってどのように計算量が変化するかを示すために、計算量の概念を提示する。配列、リスト、木、グラフなどの基礎的なデータ構造を説明し、その上に探索アルゴリズムや整列アルゴリズムの解説を行う。
1.アルゴリズムの定義と性質を理解する。 2.指数時間アルゴリズムの計算量増大の速さを理解する。 3.配列とリストを理解する 4.スタックと待ち行列及び木構造を理解する 5.線形探索、二分探索、ハッシュ探索アルゴリズムとその特徴を理解する 6.各種整列アルゴリズムとその特徴を理解する 7.アルゴリズム設計の手法を理解する
1.基本的なアルゴリズム 2.基本的なデータ構造 3.探索 4.二分探索と計算量 5.ハッシュ法 6.スタックと待ち行列 7.再帰的アルゴリズム 8.前半の演習 9.整列アルゴリズムの基礎 10. シェルソートとクイックソート 11. マージソートとヒープソート 12. 比較によらない整列 13. 線形リスト 14. 木構造と2分探索木 15. 後半の演習
アクティブラーニング(その他)演習
本科目は、90時間の学修が必要な内容で構成されている。授業は30時間分(2h×15コマ)となるため、60時間分相当の事前・事後学修(課題等含む)が、授業の理解を深めるために必要となる。
柴田望洋、新・明解C言語で学ぶアルゴリズムとデータ構造第2版、SBクリエイティブ
茨木俊秀、Cによるアルゴリズムとデータ構造、昭晃堂 石畑清、アルゴリズムとデータ構造、岩波書店
小テスト10%、レポート20%、中間試験35%、期末試験35%で評価する。
初回授業時に提示する。
shigei@ibe.kagoshima-u.ac.jp
電気電子工学棟605A shigei@ibe.kagoshima-u.ac.jp
プログラミング序論演習、プログラミング言語I及び演習
該当なし
C言語を理解していること。
15回