授業の目的 【日本語】 Goals of the Course(JPN) | | この講義では、情報処理の基本となるアルゴリズムとデータ構造について、その基本概念と基礎知識を学び、プログラミングでそれらの技法を使いこなせるようになることを目的とする。
この講義を習得することにより、以下のことができるようなることを目標とする。
1. オーダー評価などの計算量概念を理解し、説明できる。
2. 基本データ構造を用いたアルゴリズム設計ができる。
3. アルゴリズムの基本的な手法を理解し、説明できる。
4. 具体的な問題に対して、適切なアルゴリズムとデータ構造を選択し、プログラムを作成できる。 |
|
|
授業の目的 【英語】 Goals of the Course | | This is an introductory course on algorithm and data structure, which is a foundation of programming.
The goals of this course are to
1. be able to understand and explain the concept of complexity
2. be able to design algorithms by using basic data structures
3. be able to understand and explain basic methods of algorithms
4. be able to implement programs by using appropriate data structures and methods |
|
|
到達目標 【日本語】 Objectives of the Course(JPN)) | | この講義では、情報処理の基本となるアルゴリズムとデータ構造について、その基本概念と基礎知識を学び、プログラミングでそれらの技法を使いこなせるようになることを目的とする。
この講義を習得することにより、以下のことができるようなることを目標とする。
1. オーダー評価などの計算量概念を理解し、説明できる。
2. 基本データ構造を用いたアルゴリズム設計ができる。
3. アルゴリズムの基本的な手法を理解し、説明できる。
4. 具体的な問題に対して、適切なアルゴリズムとデータ構造を選択し、プログラムを作成できる。 |
|
|
到達目標 【英語】 Objectives of the Course | | This is an introductory course on algorithm and data structure, which is a foundation of programming.
The goals of this course are to
1. be able to understand and explain the concept of complexity
2. be able to design algorithms by using basic data structures
3. be able to understand and explain basic methods of algorithms
4. be able to implement programs by using appropriate data structures and methods |
|
|
バックグラウンドとなる科目【日本語】 Prerequisite Subjects | | 離散数学及び演習
計算機プログラミング基礎及び演習
プログラミング及び演習
オートマトンと形式言語 |
|
|
バックグラウンドとなる科目【英語】 Prerequisite Subjects | | Discrete Mathematics with Exercise
Fundamental Computer Programming with Exercises
Computer Programming with Exercises
Automaton and Formal Language |
|
|
授業の内容【日本語】 Course Content | | 1. アルゴリズムと計算量
2. リスト構造, ヒープ, ハッシュとバケット
3. 再帰呼出しと分割統治
4. グラフ探索
5. 動的計画法
6. 縮小法
7. 最大流と割当て問題
8. 文字列照合
9. 問題の難しさの測り方, 難問対策 |
|
|
授業の内容【英語】 Course Content | | 1. Algorithm and Complexity
2. List, Heap, Hash, and Bucket
3. Recursive Call and Divide-and-Conquer
4. Graph Search
5. Dynamic Programming
6. Reduction Algorithms
7. Maximum Flow
8. String Matching
9. NP-Completeness and Approximation Algorithms |
|
|
成績評価の方法と基準【日本語】 Course Evaluation Method and Criteria | | 達成目標に対しての習得度をレポート課題および期末試験にて評価する。
アルゴリズムとデータ構造について、基本的な事項を理解し、それらを具体的な問題に適用することができれば合格とする。より難易度の高い問題を解くことができれば、それに応じて成績に反映させる。 |
|
|
成績評価の方法と基準【英語】 Course Evaluation Method and Criteria | | The final grade will be calculated according to the submitted reports and the final examination.
You can pass this lecture if you understand the elemental knowledge about algorithms and data structures and can apply them to specific problems. You will get a higher grade if you can solve more difficult problems. |
|
|
履修条件・注意事項【日本語】 Course Prerequisites / Notes | | |
|
履修条件・注意事項【英語】 Course Prerequisites / Notes | | No requirement for registration. |
|
|
教科書【日本語】 Textbook | | 杉原厚吉. データ構造とアルゴリズム. 共立出版, 2001. ISBN-10: 4320120345
講義は、原則として、教科書に沿って進めるので、かならず準備すること。 |
|
|
教科書【英語】 Textbook | | Koukichi Sugihara. Data Structure and Algorithms (in Japanese). Kyoritsu Syuppan, 2001. |
|
|
参考書【日本語】 Reference Book | | Thomas H. Cormen, Charles E. Leiserson, Ronald L Rivest, and Clifford Stein. Intruduction to Algorithms. Third Edition, MIT Press, 2009. |
|
|
参考書【英語】 Reference Book | | Thomas H. Cormen, Charles E. Leiserson, Ronald L Rivest, and SClifford Stein. Intruduction to Algorithms. Third Edition, MIT Press, 2009. |
|
|
授業時間外学習の指示【日本語】 Self-directed Learning Outside Course Hours | | 毎回の授業前に教科書の指定個所を読んでおき、よくわからない部分を特定しておくこと。
講義終了時は、復習すること。数回のレポート課題を課すので、それを解いて提出すること。 |
|
|
授業時間外学習の指示【英語】 Self-directed Learning Outside Course Hours | | Before each session, you should read the designated part of the textbook and identify what you do not understand. After each session, you should review what you studied. For assignments, you should submit reports. |
|
|
使用言語【英語】 Language used | | |
|
使用言語【日本語】 Language used | | |
|
授業開講形態等【日本語】 Lecture format, etc. | | |
|
授業開講形態等【英語】 Lecture format, etc. | | Sessions are conducted face-to-face in the classroom. |
|
|
遠隔授業(オンデマンド型)で行う場合の追加措置【日本語】 Additional measures for remote class (on-demand class) | | |
|
遠隔授業(オンデマンド型)で行う場合の追加措置【英語】 Additional measures for remote class (on-demand class) | | |
|