2024年度 学院等開講科目 工学院 経営工学系
プログラミング応用
- 開講元
- 経営工学系
- 担当教員
- 塩浦 昭義 / 清水 伸高
- 授業形態
- 講義/演習 (対面型)
- メディア利用科目
- -
- 曜日・時限
(講義室) - 火5-8 (W9-311)
- クラス
- -
- 科目コード
- IEE.A230
- 単位数
- 110
- 開講時期
- 2024年度
- 開講クォーター
- 3Q
- シラバス更新日
- 2025年3月17日
- 使用言語
- 日本語
シラバス
授業の目的(ねらい)、概要
本講義では、Pythonを用いて基本的なデータ構造とアルゴリズムについて学ぶ。
講義と演習(各100分ずつ)を通して、問題解決のためにプログラミングを用いる能力を養う。
到達目標
本講義を履修することにより、以下の知識と能力を習得する。
1) 基本的なPythonの使い方の習得
2) 基本的なデータ構造とアルゴリズムの理解
3) アルゴリズムによる効率性の違いを理解
4) アルゴリズムを実装する力
キーワード
Python、プログラミング、アルゴリズム
学生が身につける力
- 専門力
- 教養力
- コミュニケーション力
- 展開力 (探究力又は設定力)
- 展開力 (実践力又は解決力)
- 様々なアルゴリズムとそれをPythonのコードに翻訳する能力
授業の進め方
各講義の1/2は講義形式で行い、残りの1/2は演習に充てる。
授業計画・課題
授業計画 | 課題 | |
---|---|---|
第1回 | ガイダンス Pythonの復習 (数、文字列、リスト、for文、if文) 再帰関数 演習 | Pythonの基本的な文法の復習を行い、再帰関数の概念を理解する。 |
第2回 | 計算量とグラフ 演習 | アルゴリズムの計算量とグラフの表現を理解する。 |
第3回 | 深さ優先探索と幅優先探索 演習 | 深さ優先探索と幅優先探索を理解し実装する。 |
第4回 | 貪欲法 演習 | 貪欲法とクラスカル法を理解する。貪欲法を使って問題を解く。 |
第5回 | 最短経路問題 演習 | 最短経路問題とそのアルゴリズム(ダイクストラ法、ベルマンフォード法、ワーシャルフロイド法)を理解する。 |
第6回 | 動的計画法 演習 | 動的計画法を理解し、それに基づき問題を解く. |
第7回 | 最大フロー問題とマッチング 演習 | 最大フロー問題とそのアルゴリズムを理解する. |
準備学修(事前学修・復習)等についての指示
学修効果を上げるため,教科書や配布資料等の該当箇所を参照し,「毎授業」授業内容に関する予習と復習(課題含む)をそれぞれ概ね100分を目安に行うこと。
教科書
特になし
参考書、講義資料等
Guido van Rossum: Pythonチュートリアル 第2版
Mark Lutz: 初めてのPython 第3版
成績評価の方法及び基準
毎週出題される演習課題によって評価
関連する科目
- IEE.A207 : プログラミング基礎(経営工学)
履修の条件・注意事項
受講は経営工学系の学部生に限定する。
Pythonの基礎的な使い方の習得を前提とする。プログラミング基礎(経営工学)の履修を強く推奨する。
その他
対面授業の際はPCを持参すること。
講義資料はipynbファイルで配布するため、Googleアカウント(無料)を作成しgoogle colaboratoryを開くまたはjupyter notebookをインストールするなどでipynbファイルが開ける環境が必須(詳細は初回講義で説明する)。
主にSlackを用いて連絡することもあるので、全学Slackを利用できるようにすることが非常に望ましい。
全学Slackの利用方法は以下のURLを参照:
https://www.dx.titech.ac.jp/fresh_st/