NBU日本文理大学

シラバス情報

注)公開用シラバス情報となります。在学生の方は、「UNIVERSAL PASSPORT」で詳細をご確認下さい。

科目名 アルゴリズム演習B(Exercises in Computer Algorithms and Data Structures B)
担当教員名 吉森 聖貴、赤星 哲也
配当学年 2 開講期 後期
必修・選択区分 選択 単位数 1
履修上の注意または履修条件 この科目で学習する内容はプログラミングの基礎となる大切な内容が数多く含まれています。理解を確実なものとするために、プログラムソースは自ら入力し、授業以外の時間の予習復習も含めて、数多くのプログラミング演習を行ってください。
受講心得 この科目は皆さんが次の目標を達成できることをめざしています。授業時はもちろん、予習復習(課外学習)を通して、これらの目標が達成できるように計画的に学習を進めてください。
①「データ整列アルゴリズム」と「文字列照合アルゴリズム」の基本知識に関する理解を深める。
②データ構造とアルゴリズムを、C言語を用いてプログラミングすることができる。
③アルゴリズムの図的表現(フローチャート、擬似言語)を「書く」ことができる。
教科書 「基本情報技術者 大滝みや子先生のかんたんアルゴリズム解法 -流れ図と擬似言語-」
  大滝みや子・著 リックテレコム  ISBN-13: 978-4897976051

「やさしいC」
  高橋麻奈・著 ソフトバンク ISBN 978-4-7973-4366-3
参考文献及び指定図書 (書籍)
新版C言語によるアルゴリズムとデータ構造 柴田望洋・著 ソフトバンク
アルゴリズムとデータ構造(岩波講座 ソフトウェア科学第3巻) 石畑清・著 岩波書店
最新図解でわかるアルゴリズム入門 瀬戸村勝利・著 日本実業出版社
アルゴリズムの絵本 (株)アンク・著 翔泳社

(雑誌)
日経ソフトウェア(月刊誌) 日経BP社
関連科目 (先修科目)
プログラミング1
(併修科目)
アルゴリズムB/アルゴリズム演習
(後修科目)
知的システムA・同演習A
(先修・後修に関係なく関連性の高い科目)
知的システムB・同演習B、メディア処理2A・同演習2A、メディア処理2B・同演習2B、情報システム1、情報システム2
オフィスアワー
授業の目的  この科目の目的は、「アルゴルズムB」で学習した「データ構造とアルゴリズム」に関する基礎的な知識をより確実なものとするために、実際に皆さんがプログラムとして作成してみることにあります。データ構造やアルゴリズムは特定のプログラミング言語に依存しない概念ですが、この科目では「プログラミング1」で学習し、基本情報技術者試験にも出題される「C言語」を用います。具体的には、「アルゴリズムB」で紹介した、データの整列(ソート)に関するアルゴリズム(バブルソート、セレクションソート、インサーションソートなど)や配列,ファイル処理に関するアルゴリズムの内容をC言語で記述してみます。
授業の概要
授業計画 学習内容 学習課題(予習・復習)
○第1回 ガイダンス
この科目の目的、到達目標、学習内容、学習方法(受講心得)について説明します。

○第2回 C言語の復習
「プログラミング1」で学習したC言語について、本講義で必要となる知識を中心に復習します。

○第3回 文字列の反転
教科書の第一部「4.文字列の反転」について説明するとともに,C言語を用いて実際にプログラムを作成してみます。

○第4回 バブルソート
教科書の第2部「5. データの整列(バブルソート)」について説明するとともにC言語を用いて実際にプログラムを作成してみます。また、計算量について考察します。

○第5回 バブルソート
前回に引き続き,教科書の第2部「5. データの整列(バブルソート)」について説明するとともにC言語を用いて実際にプログラムを作成してみます。また、計算量について考察します。

○第6回 セレクションソート
代表的なデータ整列アルゴリズムのうち「セレクションソート」を実現するプログラムをC言語を用いて作成してみます。また、計算量について考察します。

○第7回 インサーションソート
代表的なデータ整列アルゴリズムのうち「インサーションソート」を実現するプログラムをC言語を用いて作成してみます。また、計算量について考察します。

○第8回 1次元配列へのデータの格納
教科書の第1部「5. 1次元配列へのデータの格納」について説明するとともにC言語を用いて実際にプログラムを作成してみます。

○第9回 2次元配列データの整列
教科書の第2部「6. 2次元配列データの整列(選択法)」について説明するとともにC言語を用いて実際にプログラムを作成してみます。

○第10回 2次元配列データの整列
前回に引き続き,教科書の第2部「6. 2次元配列データの整列(選択法)」について説明するとともにC言語を用いて実際にプログラムを作成してみます。

○第11回 2次元配列要素への集計
教科書の第1部「6. 2次元配列要素への集計」について説明するとともにC言語を用いて実際にプログラムを作成してみます。

○第12回 ファイルの併合処理
教科書の第2部「7. ファイルの併合処理」について説明するとともにC言語を用いて実際にプログラムを作成してみます。

○第13回 ファイルの併合処理
前回に引き続き,教科書の第2部「7. ファイルの併合処理」について説明するとともにC言語を用いて実際にプログラムを作成してみます。

○第14回 ハッシュ法(オープンアドレス方式)
教科書の第2部「8. ハッシュ法(オープンアドレス方式)」について説明するとともにC言語を用いて実際にプログラムを作成してみます。

○第15回 ハッシュ法(オープンアドレス方式)
前回に引き続き,教科書の第2部「8. ハッシュ法(オープンアドレス方式)」について説明するとともにC言語を用いて実際にプログラムを作成してみます。

○第16回 期末試験
授業で扱った全ての内容をもとに期末試験を行います。
第1回
配布資料
演習課題
課題の時間:30分

第2回
配布資料
演習課題
課題の時間:60分

第3回
配布資料
演習課題
課題の時間:60分

第4回
配布資料
演習課題
課題の時間:60分

第5回
配布資料
演習課題
課題の時間:60分

第6回
配布資料
演習課題
課題の時間:90分

第7回
配布資料
演習課題
課題の時間:60分

第8回
配布資料
演習課題
課題の時間:90分

第9回
配布資料
演習課題
課題の時間:60分

第10回
配布資料
演習課題
課題の時間:60分

第11回
配布資料
演習課題
課題の時間:90分

第12回
配布資料
演習課題
課題の時間:60分

第13回
配布資料
演習課題
課題の時間:60分

第14回
配布資料
演習課題
課題の時間:60分

第15回
配布資料
演習課題
課題の時間:90分
授業の運営方法 プログラミング演習を中心に授業を進めます。
備考
学生が達成すべき到達目標
評価方法 評価の割合 評価の実施方法と注意点
試験 試験範囲内の内容について理解度を確認します.計算問題については解答だけでなく,計算過程についても重視します.  
小テスト
レポート
成果発表
作品
その他 授業に欠席・遅刻・早退せず,意欲的に取り組んだ場合評価の対象とします.
合計