2017 年度の講義概要のデータベースを検索します。
学部・研究科
Faculty/Graduate School
総情
時間割コード
Course Code
70605
科目名
Course title
サブテーマ
Subtitle
アルゴリズム解析・設計
<C>
授業形態/単位
Term/Credits
クラス
Class
/2
担任者名
Instructor
仲川 勇二
曜限
Day/Period
木3
授業概要
Course Description
到達目標
Course Objectives

言語 / Language

日本語(Japanese)

授業概要 / Course Description

 プログラムは、コンピュータを制御するための一連の命令(手順)とデータの集まりからなっている。有限回の処理で終わる一連の手順をアルゴリズムと呼ぶ。基本的なアルゴリズムとしては、データを整列するためのソートアルゴリズム、整列されたデータからある項目を探索するためのサーチアルゴリズム等がある。本講義では、基本的なアルゴリズムとそのアルゴリズムが使用する計算時間について講究する。また、プログラムの中で、大量のデータを取り扱う場合、そのデータ構造の設計がよくないと、その後のデータの取り扱いがかなり煩雑になる。よいデータ構造を設計するための基礎となるように、基本的なデータ構造についても言及する。

到達目標 / Course Objectives

基本的なアルゴリズムの解析と設計が理解できる。

授業計画
Course Content

授業計画 / Course Content

1 アルゴリズムと計算量
2 基本的なデータ構造
(1)抽象データ型
(2)リスト
(3)スタック
3 ソートアルゴリズムと解析
(1)O(n^2)ソートアルゴリズム
(2)O(n  log  n)ソートアルゴリズム1
(3)O(n  log  n)ソートアルゴリズム2
(4)O(n)ソートアルゴリズム1
(5)O(n)ソートアルゴリズム2
4 サーチアルゴリズムと解析
(1)二分探索法
(2)ハッシュ法
(3)RACサーチ
5 アルゴリズムの実現例(1)  例1
(2)  例2
6 アルゴリズムの設計

授業時間外学習 / Expected work outside of class

数学の知識が必要です。微分積分について復習することが望ましい。

成績評価の方法・基準
Grading Policies /
Evaluation Criteria

方法 / Grading Policies

定期試験を行わず、平常試験(小テスト・レポート等)で総合評価する。小テスト(ほぼ100%)、レポート等の評価を考慮することがある。

基準 / Evaluation Criteria

基本的なアルゴリズムの解析と設計が理解できているかで評価する。

教科書
Textbooks


プリント資料

参考書
References

エイホ・ホップクロフト・ウルマン  『データ構造とアルゴリズム』  (培風館)   ヴィルト  『アルゴリズムとデータ構造』  (近代科学社)   アズムーデ  『抽象データ型とアルゴリズム』  (サイエンス社)   セジウィック  『アルゴリズム第1巻〜第3巻』  (近代科学社)   ゴネット  『アルゴリズムとデータ構造ハンドブック』  (啓学出版)   茨木  『アルゴリズムとデータ構造』  (昭晃堂)  

備考
Other Comments

微分積分、ベクトル、行列等の数学的基礎知識を前提として講義する。