シラバス参照 |
講義概要/Course Information |
科目基礎情報/General Information |
授業科目名 /Course title (Japanese) |
アルゴリズムとデータ構造およびプログラミング演習 | ||
---|---|---|---|
英文授業科目名 /Course title (English) |
Algorithms and Data Structures and Programming Exercises | ||
科目番号 /Code |
COM401e COM401f COM401g COM401h COM401i | ||
開講年度 /Academic year |
2020年度 | 開講年次 /Year offered |
2 |
開講学期 /Semester(s) offered |
後学期 | 開講コース・課程 /Faculty offering the course |
情報理工学域 |
授業の方法 /Teaching method |
講義/演習 | 単位数 /Credits |
3 |
科目区分 /Category |
専門科目 | ||
開講学科・専攻 /Cluster/Department |
Ⅱ類 | ||
担当教員名 /Lecturer(s) |
森田 啓義・小川 朋宏 | ||
居室 /Office |
東2号館615・西10号館821 | ||
公開E-Mail |
morita@uec.ac.jp, ogawa@is.uec.ac.jp | ||
授業関連Webページ /Course website |
後日公開予定 | ||
更新日 /Last updated |
2020/03/16 09:49:28 | 更新状況 /Update status |
公開中 /now open to public |
講義情報/Course Description |
主題および 達成目標 /Topic and goals |
プログラミングにおいては,与えられた問題を適切に定式化する能力が必要不可欠である.特に,効率の良い解法(アルゴリズム)と,そのための問題表現(データ構造)を設計することが重要となる.この講義では,計算量の概念を理解し,アルゴリズムの効率を意識しながら問題を適切に定式化する能力を習得することを目標として,様々な情報処理の基本となるアルゴリズムとデータ構造について講義を行い,またプログラミング演習を通じて問題の定式化能力の定着を図る. |
---|---|
前もって履修 しておくべき科目 /Prerequisites |
基礎プログラミングおよび演習 数値解析および プログラミング演習 |
前もって履修しておくこ とが望ましい科目 /Recommended prerequisites and preparation |
基礎プログラミングおよび演習 数値解析および プログラミング演習 |
教科書等 /Course textbooks and materials |
必要に応じて資料を配付する (参考書)柴田望洋,辻亮介著,「明解C言語によるアルゴリズムとデータ構造」ソフトバンククリエイティブ |
授業内容と その進め方 /Course outline and weekly schedule |
授業内容 本講義は2時限連続で実施する.1時限目では代表的なアルゴリズムおよびデータ構造について講義を行い,2時限目にその理解を深めるために演習課題を提示する.講義は,指定した参考書を適宜参照して進める.なお,本講義では,講義・演習ともにC言語を用いて行う. 授業計画 第1回:プログラミングの復習: 関数,ポインタ 第2回:プログラミングの復習: ポインタ,構造体 第3回:構造体,アルゴリズムと計算量,計算時間の計測・制御 第4回:リスト構造の実現 第5回:スタックとキュー 第6回:探索 第7回:2分探索 第8回:ハッシュ法 第9回:木構造と2分探索木 第10回:再帰的アルゴリズム 第11回:ヒープ 第12回:基本ソート 第13回:クイックソート 第14回:文字列の基本処理と文字列探索 第15回:ハードウェアを意識したデータ構造,ソフトウェア作成 定期試験 |
実務経験を活かした 授業内容 (実務経験内容も含む) /Course content utilizing practical experience |
|
授業時間外の学習 (予習・復習等) /Preparation and review outside class |
演習形式なので,復習をしっかり行うようにして下さい |
成績評価方法 および評価基準 (最低達成基準を含む) /Evaluation and grading |
(a) 授業中の課題(50%),期末試験(50%)で評価する (b) 評価基準 ・アルゴリズムの計算量について理解する ・基本的なデータ構造について理解する ・基本的なアルゴリズムについて理解する 上記で理解した基本的なデータ構造とアルゴリズムについて,C言語などのプログラミング言語で実装でき,それを用いた応用プログラムが書ける (c) 期末試験を受けるためには全回のレポートを提出していることが必要である. |
オフィスアワー: 授業相談 /Office hours |
水曜日5限(講義終了後).それ以外の時間帯も適宜相談可. *出張等で不在の場合がありますので事前連絡をして下さい. |
学生へのメッセージ /Message for students |
演習形式なので,復習をしっかり行うようにして下さい |
その他 /Others |
3クラスで開講しますが,同じ内容を講義し,演習を行う予定です. |
キーワード /Keyword(s) |
プログラミング,アルゴリズムと計算量,データ構造, |