データ構造とアルゴリズム

科目基礎情報

学校 鹿児島工業高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 データ構造とアルゴリズム
科目番号 0064 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 学修単位: 2
開設学科 情報工学科 対象学年 4
開設期 前期 週時間数 2
教科書/教材 Pythonで体験してわかるアルゴリズムとデータ構造,西澤弘毅・森田光,近代科学社
担当教員 入江 智和

到達目標

(1)アルゴリズム,計算量を説明できる
(2)データ構造を説明できる
(3)探索を説明できる
(4)ソートを説明できる

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1作成したプログラムについて,計算量の観点から評価できる。アルゴリズムとは何か説明できる。計算量を表現できる。アルゴリズムについて何も説明できない。計算量について何も説明できない。
評価項目2プログラムを作成するに当たり,適切なデータ構造を利用できる。基本的なデータ構造を説明できる。データ構造について何も説明できない。
評価項目3目的に従って,最適な探索方法を選択できる。各探索方法の特徴を説明できる。各探索方法を説明できない。
評価項目4目的に従った,適切なソートを利用できる。様々なソートを,基本操作により分類できる。ソートの名称,分類を説明できない。

学科の到達目標項目との関係

教育方法等

概要:
データの表現手段(データ構造)と処理手順(アルゴリズム)を解説し,それらをプログラム言語で記述する手法を提示する。
授業の進め方・方法:
講義・演習形式の形態であるが,演習は基本的には自学自習の時間に割当てる。
注意点:
各項目について講義と演習を実施するので,3年次までに学習した情報処理Ⅰ,Ⅱ,Ⅲにおけるプログラミング言語でのプログラム作成方法と,文法等の理解は必要である。講義内容を理解するために,予習をしておくこと・また,講義終了後は復習としてサンプルプログラムの実行,演習問題等の課題に取り組むこと。1回の授業につき,自学自習(240分)が必要である。疑問点があれば,そのつど質問すること。

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス
Pythonの基本的な使い方
2週 整列 選択ソートを説明できる。
挿入ソートを説明できる。
バブルソートを説明できる。
マージソートを説明できる。
クイックソートを説明できる。
3週 整列
4週 整列
5週 整列
6週 整列
7週 探索 線形探索を説明できる。
2分探索を説明できる。
2分探索木を説明できる。
8週 探索
2ndQ
9週 探索
10週 計算量 アルゴリズムの計算量を説明できる。
11週 データ構造 スタックを説明できる。
キューを説明できる。
リストを説明できる。
12週 データ構造
13週 データ構造
14週 データ構造
15週 試験答案の返却・解説 各試験において間違えた部分を自分の課題として把握する(非評価項目)。
16週

評価割合

期末試験その他合計
総合評価割合6040100
基礎的能力000
専門的能力6040100
分野横断的能力000