概要:
本授業では,典型的、重要なアルゴリズムやデータ構造,及びアルゴリズムに関する重要な概念や技法、またアルゴリズムを実現するプロセスを理解させ、情報工学・情報科学の基幹技術について素養とスキルを持たせることを目標とする。
授業の進め方・方法:
教科書に基づいた講義は主である。授業内容の進行に伴い試問や問題解説を行う。授業外の課題や練習問題を課す。
注意点:
中間試験(40%)、期末試験(60%)の総合成績で評価を行う。
総合成績が60点以上を合格とする。総合成績が60点未満の学生には1回再試験を設ける。
再評価試験は、全範囲として100点満点で60点以上を合格とし、60点とする。
|
|
週 |
授業内容 |
週ごとの到達目標 |
前期 |
1stQ |
1週 |
アルゴリズムとアルゴリズムの性能評価・計算量・O記法 |
アルゴリズムとアルゴリズムの性能評価・計算量・O記法を理解できる。
|
2週 |
データの構造及び表現法 |
データの構造及び表現法を理解できる。
|
3週 |
配列による順配置、ポインタによるリンク配置 |
配列による順配置、ポインタによるリンク配置の概念を理解でき、応用できる。
|
4週 |
順配置によるリスト、ポインタによる連結リストの実現 |
順配置によるリスト、ポインタによる連結リストの実現を理解でき、応用できる。
|
5週 |
双方連結リスト |
双方向連結リストを理解でき、応用できる。
|
6週 |
スタックのデータ構造と実現 |
スタックのデータ構造と実現を理解でき、応用できる。
|
7週 |
キューのデータ構造と実現、リンクバッファーによるキューの実現 |
キューのデータ構造と実現、リンクバッファーによるキューの実現を理解でき、応用できる。
|
8週 |
木の概念、2分木、2分木の表現と走査 |
木の概念、2分木、2分木の表現と走査を理解でき、応用できる。
|
2ndQ |
9週 |
数式を表す木、木の表現 |
数式を表す木、木の表現を理解でき、応用できる。
|
10週 |
線形探索、2分探索、ハッシュ法 |
線形探索、2分探索、ハッシュ法を理解でき、応用できる。
|
11週 |
文字列の探索 |
文字列の探索を理解でき、応用できる。
|
12週 |
木の探索、2分探索木、B木 |
木の探索、2分探索木、B木を理解でき、応用できる。
|
13週 |
選択によるソート、交換によるソート |
選択によるソート、交換によるソートを理解でき、応用できる。
|
14週 |
挿入によるソート、併合によるソート |
挿入によるソート、併合によるソートを理解でき、応用できる。
|
15週 |
外部ソート |
外部ソートの概念と方法を理解でき、応用できる。
|
16週 |
|
|
分類 | 分野 | 学習内容 | 学習内容の到達目標 | 到達レベル | 授業週 |
基礎的能力 | 人文・社会科学 | 英語 | 英語運用能力の基礎固め | 英語のつづりと音との関係を理解できる。 | 1 | |
英語の標準的な発音を聴き、音を模倣しながら発声できる。 | 2 | |
専門的能力 | 分野別の専門工学 | 機械系 | 製図 | 図面の役割と種類を理解できる。 | 2 | |
製図用具を正しく使うことができる。 | 3 | |
線の種類と用途を説明できる。 | 3 | |
品物の投影図を正確に書くことができる。 | 3 | |
製作図の書き方を理解できる。 | 1 | |
図形を正しく描くことができる。 | 1 | |
図形に寸法を記入することができる。 | 1 | |
公差と表面性状の意味を理解し、図示することができる。 | 1 | |
部品のスケッチ図を書くことができる。 | 1 | |
情報系 | プログラミング | プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 | 1 | |
与えられた簡単な問題に対して、それを解決するためのソースプログラムを記述できる。 | 1 | |
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 | 1 | |
主要な言語処理プロセッサの種類と特徴を説明できる。 | 1 | |
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 | 1 | |
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 | 1 | |
ソフトウェア | アルゴリズムの概念を説明できる。 | 2 | |
与えられたアルゴリズムが問題を解決していく過程を説明できる。 | 2 | |
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを理解している。 | 2 | |
時間計算量や領域計算量などによってアルゴリズムを比較・評価できることを理解している。 | 2 | |
整列、探索など、基本的なアルゴリズムについて説明できる。 | 2 | |
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを理解している。 | 2 | |
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを理解している。 | 2 | |
リスト構造、スタック、キューなどの基本的なデータ構造の概念と操作を説明できる。 | 2 | |
計算機工学 | 整数・小数をコンピュータのメモリー上でディジタル表現する方法を理解している。 | 1 | |
基数が異なる数の間で相互に変換できる。 | 1 | |
基本的な論理演算を行うことができる。 | 1 | |
与えられた簡単な組合せ論理回路の機能を説明することができる。 | 1 | |
五大装置それぞれの役割とこれらの間でのデータの流れを説明できる。 | 1 | |
情報通信ネットワーク | ローカルエリアネットワークの概念を説明できる。 | 1 | |
インターネットの概念を説明できる。 | 1 | |
情報数学・情報理論 | ブール代数に関する基本的な概念を説明できる。 | 1 | |
その他の学習内容 | 少なくとも一つの具体的なコンピュータシステムについて、起動・終了やファイル操作など、基本的操作が行える。 | 2 | |
少なくとも一つの具体的なオフィススイートを使って、文書作成や図表作成ができ、報告書やプレゼンテーション資料を作成できる。 | 2 | |
少なくとも一つのメールツールとWebブラウザを使って、メールの送受信とWebブラウジングを行うことができる。 | 2 | |
コンピュータウィルスやフィッシングなど、コンピュータを扱っている際に遭遇しうる代表的な脅威について説明できる。 | 1 | |
コンピュータを扱っている際に遭遇しうる脅威に対する代表的な対策について説明できる。 | 1 | |
メディア情報の主要な表現形式や処理技法について説明できる。 | 1 | |