シラバスの詳細な内容を表示します。
→ 閉じる(シラバスの一覧にもどる)
開講年度 | 2023 年度 | |
---|---|---|
開講区分 | 工学部電気電子工学科/総合工学科電気電子工学コース ・専門教育 | |
受講対象学生 |
学部(学士課程) : 3年次 |
|
選択・必修 | 選択 選択科目 |
|
授業科目名 | アルゴリズムとデータ構造(2018年以前入学生用) | |
あるごりずむとでーたこうぞう | ||
Algorithms and Data Structures (for students enrolled before 2018) | ||
単位数 | 2 単位 | |
ナンバリングコード | EN-ECOM-3
|
|
開放科目 | 非開放科目 | |
開講学期 |
後期 |
|
開講時間 |
火曜日 3, 4時限 |
|
授業形態 |
対面授業 * 状況により変更される可能性があるので定期的に確認して下さい
「オンライン授業」・・・オンライン会議ツール等を利用して実施する同時双方向型の授業 |
|
開講場所 | 工学部教室 | |
担当教員 | 高瀬 治彦(工学研究科電気電子工学専攻) | |
TAKASE, Haruhiko | ||
SDGsの目標 |
|
|
連絡事項 | * 状況により変更される可能性があるので定期的に確認して下さい |
授業の概要 | ひととおりプログラムが書ける人を対象に,次の段階として,コンピュータソフトウエア技術の基礎としてのアルゴリズムとデータ構造を学ぶ。これにより,高性能なソフトウエアを作成するために必要な技術や知識を修得する。内容としては,アルゴリズムの性能の評価法である計算量の概念,各種データ構造,各種探索・ソートのアルゴリズムのJava言語による実装,および,それらの応用法について学ぶ。 |
---|---|
学修の目的 | この講義の主要な目標は,次の2点である。①問題に応じた適切なアルゴリズムを選択できるようになる。②選択したアルゴリズムをもとに,プログラムを作成できるようになる。さまざまなアルゴリズムを学ぶことで,与えられた問題を効率よく解決するプログラムを作成できるようになることをめざす。この結果,基本情報処理技術者試験の関連分野の問題をある程度解けるようになることをめざす |
学修の到達目標 | この講義の主要な目標は,次の2点である。 ・問題に応じた適切なデータ構造・アルゴリズムを選択できるようになる。 ・選択したデータ構造・アルゴリズムをもとに,プログラムを作成できるようになる。 ★学習・教育目標:「基礎知識と専門知識」の修得,「デザイン能力・ものづくり能力」ための基礎作り. |
ディプロマ・ポリシー |
|
成績評価方法と基準 | 最終レポートにより判定する.ただし,講義の7割以上に出席した者のみを,単位授与の対象者とする。 |
授業の方法 | 講義 演習 |
授業の特徴 |
Moodleを活用する授業 |
授業改善の工夫 | 他の類似講義を参考に,eラーニングシステムMoodleの有効な利用法,分かりやすい講義の進め方について検討している。 |
教科書 | |
参考書 | プログラミングの宝箱 アルゴリズムとデータ構造 第2版 (紀平拓男・春日伸弥,ソフトバンククリエイティブ) アルゴリズム図鑑 絵で見てわかる26のアルゴリズム (石田保輝, 宮崎修一, 翔泳社) アルゴリズムイントロダクション第3版 第1巻 (T.コルメン・C.ライザーソン・R.リベスト・C.シュタイン,近代科学社) アルゴリズムイントロダクション第3版 第2巻 (T.コルメン・C.ライザーソン・R.リベスト・C.シュタイン,近代科学社) アルゴリズムイントロダクション第3版 総合版 (T.コルメン・C.ライザーソン・R.リベスト・C.シュタイン,近代科学社) プログラミングコンテスト チャレンジブック (秋葉拓哉・岩田陽一・北川宣稔,マイナビ) Java データ構造とアルゴリズム 基礎講座(長尾和彦,技術評論社) 明解 Javaによるアルゴリズムとデータ構造 (柴田望洋,ソフトバンククリエイティブ) |
オフィスアワー | 毎週水曜日18:00-19:00 第1合同棟3階 7306室 |
受講要件 | プログラミング演習 I, プログラミング演習 IIを履修済みであること. |
予め履修が望ましい科目 | 計算機基礎II及び演習 |
発展科目 | 計算機工学II 電気電子工学応用実験 |
その他 |
この講義は,授業時間中にPCにて実際にプログラムを作成する。 授業にはPCを持参すること。 なお,授業の連絡はMoodleの専用コースにて行う。履修登録後に担当教員が登録するので,登録漏れ等がある場合は,連絡すること。 |
MoodleのコースURL |
---|
キーワード | 探索アルゴリズム,整列アルゴリズム,データ構造,木構造,スタック,キュー,再帰呼び出し,リスト,マップ,ハッシュ,数値計算 |
---|---|
Key Word(s) | Search Algorithm, Sort Algorithm, Data Structure, List, Stack, Queue, Recursive Call, List, Map, Hash, Numerical Processing |
学修内容 | 各回の内容を以下に示す.なお【】内は対応する教科書の章である. 1. 導入 2. Eclipseを使ったJavaプログラミング アルゴリズムの評価尺度 3. ソート 4. ソート 再帰呼び出し 5. サーチ 6. リスト 7. スタック,キュー 8. ツリー構造 9. マップとハッシュ 10. 浮動小数点型と数値計算 【誤差 ニュートン法・二分探索】 11. 浮動小数点型と数値計算 【数値微分 数値積分 モンテカルロ法】 12. 人工知能の基礎【バックトラック方法と幅優先探索】 13. 人工知能の基礎【動的計画法】 14. 最終課題 15. 最終課題(続き) 16. 総括 |
事前・事後学修の内容 | 事前学修:授業内容の概略は,事前にmoodleにて公開する。参考図書などをつかい予習したうえで,講義に臨むこと。 事後学修:ほとんどの回で演習を行う。発展問題も用意するので,各自復習すること。 |
事前学修の時間:60分/回 事後学修の時間:60分/回 |