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

授業種別 / Teaching Types

講義(対面型)

言語 / Language

日本語(Japanese)

授業概要 / Course Description

アルゴリズムとは有限時間で問題を解くための一連の手順であり、明確に定義され順序づけられた有限個の規則の集合で定義される。これをコンピュータが解釈できる言語形式に変換したものがプログラムである。問題が与えられたとき、それを解く手順は一通りとは限らない。同じように正しい答えが出せても効率よく解けるアルゴリズムもあれば、効率の悪いアルゴリズムもある。本科目では、整列や探索等の基本的なアルゴリズムとそれらが扱うデータ構造について詳説するとともに、よりよいアルゴリズムを作成するための設計技法(全探索、二分探索、再帰、メモ化、分割統治法、貪欲法,動的計画法)について講義する。

学位授与方針との関係 / Related Diploma Policy

(総合情報学部)
1.知識・技能
  
2.思考力・判断力・表現力等の能力
  

到達目標 / Course Objectives

①知識・技能の観点
・基本的なアルゴリズムとデータ構造を理解し、それらの特徴を説明できる。
②思考力・判断力・表現力等の能力の観点
・基本的なアルゴリズムを解析、設計できる。
③主体的な態度の観点
・理解が不十分な点についてを自ら復習し、理解度を高めることができる。

授業手法 / Teaching Methods

・教員による資料等を用いた説明や課題等へのフィードバック

授業計画
Course Content

授業計画 / Course Content

第1回  アルゴリズムの基本
第2回  アルゴリズムの計算量
第3回  探索アルゴリズム
第4回  配列と連結リストとハッシュ
第5回  スタックとキュー
第6回  再帰的アルゴリズム1
第7回  再帰的アルゴリズム2
第8回  整列アルゴリズム1
第9回  整列アルゴリズム2
第10回  整列アルゴリズム3
第11回  整列アルゴリズム4
第12回  木
第13回  グラフ
第14回  動的計画法
第15回  まとめ

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

本授業では、毎回の授業で⼩課題を課す。期限までに関大  LMS  に提出すること。課題にかかる時間は  30  分程度。

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

方法 / Grading Policies

定期試験を行わず、平常試験(小テスト・レポート等)で総合評価する。
授業各回の⼩課題(50%)、中間および期末課題(50%)

基準・評価 / Evaluation Criteria・Assessment Policy

①知識・技能の観点
・基本的なアルゴリズムやデータ構造とそれらの特徴を理解しているかを評価する。
②思考⼒・判断⼒・表現⼒等の能⼒の観点
・アルゴリズムを解析、設計できるかを評価する。

教科書
Textbooks

大槻兼資,  秋葉拓哉  問題解決力を鍛える!アルゴリズムとデータ構造  講談社  978-4065128442

参考書
References

柴田望洋  新・明解C言語で学ぶアルゴリズムとデータ構造  SBクリエイティブ  978-4797390520
T.  コルメン  (著),  R.  リベスト  (著),  C.  シュタイン  (著),  C.  ライザーソン  (著),  浅野哲夫ほか  (訳)  アルゴリズムイントロダクション  第3版  第1巻:  基礎・ソート・データ構造・数学  近代科学社    978-4764904064
T.  コルメン  (著),  R.  リベスト  (著),  C.  シュタイン  (著),  C.  ライザーソン  (著),  浅野哲夫ほか  (訳)  アルゴリズムイントロダクション  第3版  第2巻:  高度な設計と解析手法・高度なデータ構造・グラフアルゴリズム  近代科学社  978-4764904071
伊藤静香  アルゴリズムを、はじめよう  インプレス  978-4844332015

フィードバックの方法
Feedback Method

授業中に⼩課題の解説を⾏う。

担任者への問合せ方法
Instructor Contact

授業中に質問するか、関⼤  LMS  のメッセージ機能で連絡する。

備考
Other Comments

1年次科⽬  「プログラミング⼊⾨」もしくは「プログラミング基礎実習」の知識を前提とする。

アルゴリズムの説明は擬似言語(授業内で紹介)を用いて行われる.理解を補助するサンプルコードは,担任者提供のものは  Python  で,教科書のものは  C++  で記述されている。