アルゴリズム論

科目基礎情報

学校 鳥羽商船高等専門学校 開講年度 平成31年度 (2019年度)
授業科目 アルゴリズム論
科目番号 0183 科目区分 専門 / 選択
授業形態 講義 単位の種別と単位数 学修単位: 2
開設学科 生産システム工学専攻 対象学年 専2
開設期 前期 週時間数 前期:2
教科書/教材 新・明解C言語によるアルゴリズムとデータ構造 柴田望洋、辻亮介 ソフトバンククリエイティブ
担当教員 土田 隼之

到達目標

1.与えられたアルゴリズムが問題をといていく過程を説明できる.
2.同じ問題を解決する複数のプログラムを,時間計算量等の観点から比較できる.

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
評価項目1データ構造とアルゴリズムの関係について説明できる.リスト構造,スタック,キューについて説明できる.基本的なプログラムを作成できない.
評価項目2整列・検索のプログラムを作成することができる.整列・検索のアルゴリズムを説明できる.整列・検索のアルゴリズムの説明ができない.
評価項目3時間計算量を計算し,アルゴリズムを比較することができる.時間計算量を説明できる.計算量の説明ができない.

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

教育方法等

概要:
本科目の目的は,効率的なプログラムを作成するための,基本的なアルゴリズムに関する知識と,実際にプログラムを作成することができる技術の習得である.
※実務との関係
 この科目は企業でアルゴリズムの研究開発を担当していた教員が、その経験を活かし、アルゴリズムの各種手法などについて講義形式で授業を行うものである。
授業の進め方・方法:
・講義内容は,C言語に用いて説明をする.
・講義で取り上げたアルゴリズムは,演習問題,課題によって,実際にプログラムを作成して理解を深める.
注意点:
・C言語に関するプログラミングの授業を履修していることが望ましい
・講義前半で,C言語によるプログラミングについて解説を行うが,C言語を用いた基本的はプログラム能力は必須である.

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ガイダンス 授業内容の工学的位置づけを説明できる.世の中で使われているアルゴリズムの具体例と効果が説明できる。
2週 アルゴリズムと基本データ構造 アルゴリズムとは何か説明できる.配列,構造体について説明できる.
3週 探索1 探索のアルゴリズムを説明できる.
4週 探索2 探索のプログラムを作成できる.
5週 再帰アルゴリズム1 再帰アルゴリズムを説明できる.
6週 再帰アルゴリズム2 再帰アルゴリズムが作成できる.
7週 中間試験 中間試験
8週 スタックとキュー スタックとキューのプログラムを作成できる.
2ndQ
9週 集合 集合のプログラムが作成できる.
10週 整列1 整列のアルゴリズムを説明できる.
11週 整列2 整列のプログラムを作成できる.
12週 文字列探索 文字列探索のプログラムが作成できる.
13週 線形リスト 線形リストのプログラムを作成できる.
14週 木構造 木構造のアルゴリズムを作成できる.
15週 定期試験 定期試験
16週 試験解説と総括 間違った問題を解くことができる.

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野プログラミング代入や演算子の概念を理解し、式を記述できる。5
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。5前10
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。5
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。5
主要な言語処理プロセッサの種類と特徴を説明できる。5
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。5
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。5
ソフトウェアアルゴリズムの概念を説明できる。5
与えられたアルゴリズムが問題を解決していく過程を説明できる。5
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。5
整列、探索など、基本的なアルゴリズムについて説明できる。5
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。5
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。5
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。5
ソフトウェアを中心としたシステム開発のプロセスを説明できる。5
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。5
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。5

評価割合

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