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

科目基礎情報

学校 鹿児島工業高等専門学校 開講年度 2017
授業科目 データ構造とアルゴリズム
科目番号 0025 科目区分 専門 / 必修
授業形態 講義 単位の種別と単位数 学修単位: 2
開設学科 情報工学科 対象学年 4
開設期 前期 週時間数 2
教科書/教材 アルゴリズムとデータ構造 湯田幸八,伊原充博 コロナ社
担当教員 豊平 隆之

到達目標

(1)アルゴリズム,計算量,O記法を説明できる
(2)順配置,リンク配置などの物理構造とリスト,スタック,キュー,木などの論理構造を説明できる
(3)線形探索,2分探索,ハッシュ法と文字列,木の探索を説明できる
(4)選択,交換,挿入,併合の各基本操作によるソートを説明できる
(5)グラフの表現,グラフの探索を説明できる
(6)有名なアルゴリズムの問題について説明できる

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1自作のプログラムについて計算量の観点から評価できる。アルゴリズムとは何か説明できる。計算量をO記法で表現できる。アルゴリズムを説明できない。計算量を形式的に計算できない。
評価項目2プログラムを作成するに当たり,適切な論理構造を適切な物理構造で利用できる。物理構造と論理構造の関係を説明できる。 各論理構造の特徴を説明できる。物理構造と論理構造のそれぞれの形態を理解できない。
評価項目3目的に従って,最適な探索方法を選択できる。各探索方法の特徴を説明できる。各探索方法を説明できない。
評価項目4目的に従った,適切なソートを利用できる。様々なソートを,基本操作により分類できる。ソートの名称,分類を説明できない。
評価項目5目的に従って,グラフを利用し問題を解決できる。グラフの表現方法を理解し,探索の方法を説明できる。グラフとは何か説明できない。
評価項目6有名な問題解決の手法を応用して,目的に適した解決方法を作り出せる。様々な問題解決の方法があることを理解し,有名なものを説明できる。有名な問題解決の方法を説明できな。

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

教育プログラムの科目分類 (2)② 説明 閉じる
教育プログラムの科目分類 (3)② 説明 閉じる
JABEE(2012)基準 1(2)(c) 説明 閉じる
JABEE(2012)基準 2.1(1)② 説明 閉じる

教育方法等

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

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 アルゴリズムと計算量 アルゴリズム,計算量,O記法を説明できる。
2週 基本的なデータ構造(物理構造) 配列,ポインタによるリンクの表現を説明できる。
3週 基本的なデータ構造(リスト,スタック,キュー) 論理構造のリスト,スタック,キューを理解し,使用できる。
4週 基本的なデータ構造(木) 論理構造の木を理解し,使用できる。
5週 探索(線形探索,2分探索,ハッシュ) 線形探索,2分探索を説明できる。ハッシュ法を説明できる。
6週 探索(力任せ,KMP法,BM法) 文字列の探索を説明できる。
7週 探索(2分探索木,B木) 木の探索を説明できる。
8週 整列(選択によるソート) 選択,交換,挿入,併合のソートの分類を説明できる。
選択によるソートを説明できる。
2ndQ
9週 整列(交換,挿入によるソート) 交換によるソートと挿入によるソートを説明できる
10週 整列(併合によるソート,比較によらないソート) 併合によるソートを説明できる。比較によらないソートを説明できる。
11週 グラフの基礎 グラフ,グラフの表現を説明できる。
12週 グラフの探索 グラフの探索を説明できる。
13週 いろいろな問題 ハノイの塔,8クイーン問題を説明できる。
14週 いろいろな問題 ナップザック問題を説明できる
15週 試験答案の返却・解説 試験において間違えた部分を自分の課題として把握する
16週

評価割合

試験発表相互評価態度ポートフォリオレポート合計
総合評価割合70000030100
基礎的能力0000000
専門的能力70000030100
分野横断的能力0000000