CMD体育_cmd体育平台@

图片

シラバス参照

授業情報/Course information

科目名/Course: データ構造とアルゴリズム/Data Structures and Algorithms
科目一覧へ戻る 2024/09/10 現在

授業基本情報
科目名(和文)
/Course
データ構造とアルゴリズム
科目名(英文)
/Course
Data Structures and Algorithms
時間割コード
/Registration Code
23181001
学部(研究科)
/Faculty
情報工学部
学科(専攻)
/Department
人間情報工学科/スポーツシステム工学科
担当教員(○:代表教員)
/Principle Instructor (○) and Instructors
○佐藤 洋一郎 , 山内 仁
オフィスアワー
/Office Hour
佐藤 洋一郎(毎週木曜日の6限目に設定するので,来室してください.
これ以外の時間帯について,在室していれば対応しますが,メール等で予約してくれた方が確実です.)
山内 仁(時間:金曜日3限目(12:40-14:10)
場所:情報工学部棟 1F 2103室
※事前に連絡をいただければ上記以外でも調整のうえで対応します)
開講年度
/Year of the Course
2024年度
開講期間
/Term
前期
対象学生
/Eligible Students
2年
単位数
/Credits
2.0
授業概要情報
更新日
/Date of renewal
2024/02/28
使用言語
/Language of Instruction
日本語
オムニバス
/Omnibus
該当なし
授業概略と目的
/Cource Description and Objectives
計算機プログラムの骨格をなす2つの要素である,「処理の?法」である「アルゴリズム」と「データの保持?法」であるデータ構造」の基礎を習得する.本講義では,Cなど特定のプログラミング言語への依存を極力避けて,プログラムを作成する上で基本となる考え方について講述する.具体的な目標は次の通りである.
1)アルゴリズムとは何かを計算量の概念とともに理解する.
2)リスト中の特定の値を探索するアルゴリズムを理解する
3)リストの要素を整列するアルゴリズムを理解する.
4)文字列検索,経路探索の基本的な手法を理解する
履修に必要な知識?能力?キーワード
/Prerequisites and Keywords
C言語またはほかのプログラミング言語に関する基礎知識(簡単なプログラムが組めること).
初歩的な解析学の知識(極限,オーダー).

キーワード: アルゴリズム,データ構造,再帰
履修上の注意
/Notes
分からなければ図書館に色々な本があるので勉強してください.ウエブ検索しても良いが時々ウソの内容があるので注意すること.
教科書
/Textbook(s)
平田 富夫 アルゴリズムとデータ構造(第3版) 森北出版 978-4627726536

参考文献等
/References
近藤嘉雪,”定本 Cプログラマのためのアルゴリズムとデータ構造”,ソフトバンククリエイティブ,1998.
書名に「アルゴリズムとデータ構造」(あるいは「データ構造とアルゴリズム」)ということばを含むものなら何でもよい.
自分の好みに合ったものを見つけて学習して欲しい.
少し変わったものとして,
結城浩,”数学ガール(乱択アルゴリズム)”,ソ フトバンククリエイティブ,2011.
は対話調でアルゴリズムや計算量の考え方が丁寧に書かれている(やさしく書かれている).
自主学習ガイド
/Expected Study Guide outside Coursework/Self-Directed Learning Other Than Coursework
実際にプログラムを書いて動かしてみると理解が進む.
資格等に関する事項
/Attention Relating to Professional License
情報処理技術者(基本情報,応用情報レベル)の項目である.
アクティブラーニングに関する事項
/Attention Relating to Active Learning
ミニッツペーパーによる振り返り,課題等のアクティブラーニングを採用する.
実務経験に関する事項
/Attention Relating to Operational Experiences
民間企業で画像配信システムのコンピュータ部の開発を担当していたことから,プログラミングに関するデータ構造とアルゴリズムの基礎的な知識の必要性について,その経験を活かして説明する.
備考
/Notes
授業計画詳細情報
No. 単元(授業回数)
/Unit (Lesson Number)
単元タイトルと概要
/Unit Title and Unit Description
時間外学習
/Preparation and Review
配付資料
/Handouts
1 1 [アルゴリズムと計算量]
「アルゴリズム」の定義を知り,その評価指標としての「計算量」の概念を理解する.また,計算量を記述する?法を学び,実際のアルゴリズムに対して計算量を求める.
2 2 [再帰]
再帰の仕組みと様々な再帰プログラムの例について学ぶ.
3 3 [基本データ構造]
基本的なデータ構造であるリスト?スタック?キュー?ヒープについて学ぶ.
4 4 [ C?語による実装と動作確認]
基本的なデータ構造について,C?語を?いて実装し,その動作を確かめる.
5 5 [?分探索?]
格納するデータが順序構造を持つことを前提に,単純なリストよりも効率よくデータを探索することのできる?分探索?について理解する.
6 6~7 [ソートアルゴリズム]
データを?定の順序に?れ替えるソートアルゴリズムを分類し,?較に基づくソートアルゴリズムの理論的限界を学ぶ.
7 8 [C?語による実装と動作確認]
ソートアルゴリズムをC?語を?いて実装し,その動作を確かめる.
8 9 [ハッシュ]
離散的なデータをより効率的に探索するデータ構造であるハッシュについて理解する.
9 10~11 [グラフの探索]
グラフの概念とデータとしての表現?法,さらに探索?法について学ぶ.
10 12~13 [経路探索]
グラフ上の 2点間の最短経路を?つけるアルゴリズムを紹介する.
11 14 [?字列の探索]
?常的に使われる「?字列探索」に対して基本的なアルゴリズムから?夫した?法までを紹介する.
12 15 [まとめ]
講義全体のまとめを?う.
13 16 [定期試験]
期末定期試験を行う
授業評価詳細情報
到達目標及び観点/Learning Goal and Specific Behavioral Viewpoints
No. 到達目標
/Learning Goal
知識?理解
/Knowledge & Undestanding
技能?表現
/Skills & Expressions
思考?判断
/Thoughts & Decisions
伝達?コミュニケーション
/Communication
協働
/Cooperative Attitude
1 アルゴリズムに応じて表現?法を選定することができる(D)
2 簡単なアルゴリズムを解析することができる(D)
3 データ構造とそれを操作するアルゴリズムの構造を説明することができる(D)
成績評価方法と基準/Evaluation of Achievement
※出席は2/3以上で評価対象となります。
No. 到達目標
/Learning Goal
定期試験
/Exam.
演習課題及びレポート 受講態度(発言)
1 アルゴリズムに応じて表現?法を選定することができる(D)
2 簡単なアルゴリズムを解析することができる(D)
3 データ構造とそれを操作するアルゴリズムの構造を説明することができる(D)
評価割合(%)
/Allocation of Marks
50 40 10

科目一覧へ戻る