プログラミング入門(アルゴリズム)
2019年度 前期 情報システム学科 2年次 専門科目
- 2017年度以前入学生:科目名「アルゴリズム」情報コース必修科目、経営コース選択科目
- JABEE必修科目
金曜4限 240教室 担当教員:河原
連絡
- ツイッターで授業に関連する情報をツイートすることがあります(ハッシュタグ #nuis_prog )
- 情報システム学科2年生へ。2年後期にある研究室配属において、河原研究室の配属時に定員を超えた場合、この科目の履修状況を参考にして選考を行います。
- 配布資料や課題等は、ポータルサイトにて配布します。各自ダウンロードしてください。
- 配布資料はPDFファイルで配布するので、紙に印刷してもらってもよいですが、印刷せずにノートPC、タブレット端末、スマートフォンで閲覧しても構いません。
- リアクションペーパーや課題は印刷し解答を記述してきてください。授業時に提出してもらいます。
- 初回はこちらで用意します
- JABEE必修科目です。JABEEコースの修了を目指している・考えている人は単位取得が必要となります。
- 出席管理システムを使用します。
- 2017年度以前入学生(3年生以上)は科目名「アルゴリズム」で、情報コース(D分野「コンピュータと通信」)の専門科目です。情報コースは必修科目、それ以外は選択科目です。
授業目的
- 「プログラミング」とは、コンピュータに何らかの問題を解かせようとする際の、手順をプログラミング言語で表したもので、「アルゴリズム」とは、その手順を何らかの手法で示したものです
- この講義では、コンピュータを用いて問題解決を行う際の、基本的な考え方と手法について学びます
- 問題を解く手続きを与える「アルゴリズム」と、その際に用いるデータの表現形式である「データ構造」との関連を理解します
- さらに、アルゴリズムの記述方法、代表的なアルゴリズムについて学び、新しい問題へ適用しプログラミングを行う際の手法を学習していきます
授業内容
- (4/12) プログラムとは、アルゴリズムとは、アルゴリズムとプログラムとの関係、アルゴリズムの記述1
- (4/19) アルゴリズムの記述2、プログラミングに必要な概念(変数、演算、代入、手続きなど)
- (4/26) データ構造の基本(配列)、配列を使ったアルゴリズム1
- (5/19) 配列を使ったアルゴリズム2
- (5/17) データ構造の応用1(スタック、待ち行列、木、グラフ)
- (5/24) データ構造の応用2(スタック、待ち行列、木、グラフ)
- (5/31) 線形探索、二分探索
- (6/07) 計算量
- (6/14) ハッシュ法
- (6/21) 基本的なソート
- (6/28) 高速なソート
- (7/05) 再帰アルゴリズム
- (7/12) 探索アルゴリズム
- (7/19) グラフの探索
- (7/26) 応用アルゴリズム
- (8/02) [期末試験]
成績評価方法
- 授業時のリアクションペーパーの評価点合計を30%、数回提示する課題の評価点合計を30%、期末試験の評価点を40%として評価する
- リアクションペーパー、課題については採点して返却し解説を行う
- 期末試験についてはポータルで解答を提示し、全体の評価について講評する
教科書・参考文献
- 資料をポータルサイトにて配布するので事前・事後学習に使用すること。
- 参考文献は講義中に紹介する
受講にあたっての留意事項
- 受講学生の理解度により講義の順番(日程)や分量を調整することがある。
- プログラミングに関する講義や演習を履修済みであり、プログラミングについてある程度理解していることが望ましい。
- 「数学基礎」の履修を指導された学生は,個の単位を取得していることが望ましい。
- 継続した学習が必要となるため、欠席した場合は各自で資料を取り寄せて学習することが必要となる。
- 連絡事項や追加情報はウェブページに掲示する。
学習到達目標
- プログラミング、アルゴリズムとデータ構造について理解する(リアクションペーパー20%、課題:10%、期末試験:20%)
- 与えられた問題に対し適切なアルゴリズムやデータ構造を適用でき、プログラミングにより実現できる(リアクションペーパー10%、課題:20%,期末試験:20%)
河原