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

学習内容の到達目標 設定
 
(1)コンピュータ演習 (1)基礎プログラミングⅠ (1)基礎電気回路 (1)基礎コンピュータ工学 (1)化学基礎 (1)コンピュータの基礎知識 (1)物理基礎 (1)基礎プログラミングⅡ (1)基礎プログラミング演習 (2)プログラミング言語 (2)化学Ⅰ (2)電気回路 (2)コンピュータ工学 (2)プログラミング (2)物理Ⅰ (3)コンピュータシステム概論 (3)ディジタル回路 (3)電子工学実験 (3)情報数学 (3)物理Ⅱ (3)システムプログラミングⅠ (4)システムプログラミングⅡ (4)ディジタル回路応用 (4)データベース (4)コンピュータアーキテクチャ (4)コンピュータシステム実験 (4)創造演習 (4)情報システムと技術者倫理 (4)ソフトウェア工学 (4)オペレーティングシステムⅠ (5)創造製作 (5)ディジタル信号処理 (5)オペレーティングシステムⅡ (5)ネットワークアーキテクチャ (5)応用数物演習 (5)卒業研究 (5)数値解析 (5)オブジェクト指向プログラミング
実験・計測・分析方法(工学実験技術(各種測定方法、データ処理、考察方法))
物理、化学、情報、工学における基礎的な原理や現象を明らかにするための実験手法、実験手順について説明できる。 0 0 0 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
実験装置や測定器の操作、及び実験器具・試薬・材料の正しい取扱を身に付け、安全に実験できる。 0 0 0 2 0 0 0 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
実験データの分析、誤差解析、有効桁数の評価、整理の仕方、考察の論理性に配慮して実践できる。 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
考察・レポート作成(工学実験技術(各種測定方法、データ処理、考察方法))
実験テーマの目的に沿って実験・測定結果の妥当性など実験データについて論理的な考察ができる。 0 0 0 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 0 0 3 3 0 0 0 3 0 0 0 0 0 0 0
実験ノートや実験レポートの記載方法に沿ってレポート作成を実践できる。 0 0 0 1 0 0 0 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 0 0 0 3 3 0 0 0 3 0 0 0 0 0 0 0
実験データを適切なグラフや図、表など用いて表現できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
実験の考察などに必要な文献、参考資料などを収集できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
実験・実習に関わる態度(工学実験技術(各種測定方法、データ処理、考察方法))
実験・実習を安全性や禁止事項など配慮して実践できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 2 0 0 0 3 0 0 0 0 0 0 0
個人・複数名での実験・実習であっても役割を意識して主体的に取り組むことができる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 3 0 0 0 3 0 0 0 0 0 0 0
共同実験における基本的ルールを把握し、実践できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 3 0 0 0 3 0 0 0 0 0 0 0
レポートを期限内に提出できるように計画を立て、それを実践できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 3 0 0 0 3 0 0 0 0 0 0 0
情報の基礎(情報リテラシー)
情報を適切に収集・処理・発信するための基礎的な知識を活用できる。 0 2 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0
論理演算と進数変換の仕組みを用いて基本的な演算ができる。 0 0 0 0 3 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
コンピュータのハードウェアに関する基礎的な知識を活用できる。 0 2 0 0 2 0 2 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0
情報ネットワーク(情報リテラシー)
情報伝達システムやインターネットの基本的な仕組みを把握している。 0 2 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 3 0 0
アルゴリズム(情報リテラシー)
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを知っている。 3 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0
与えられた基本的な問題を解くための適切なアルゴリズムを構築することができる。 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0
任意のプログラミング言語を用いて、構築したアルゴリズムを実装できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
情報セキュリティ(情報リテラシー)
情報セキュリティの必要性および守るべき情報を認識している。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0
個人情報とプライバシー保護の考え方についての基本的な配慮ができる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0
インターネット(SNSを含む)やコンピュータの利用における様々な脅威を認識している 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0
インターネット(SNSを含む)やコンピュータの利用における様々な脅威に対して実践すべき対策を説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0
プログラミングの要素(プログラミング)
代入や演算子の概念を理解し、式を記述できる。 3 0 2 0 0 0 0 0 2 3 4 0 0 3 3 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
プロシージャ(または、関数、サブルーチンなど)の概念を理解し、これらを含むプログラムを記述できる。 3 0 2 0 0 0 0 0 2 3 4 0 0 3 3 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
変数の概念を説明できる。 0 0 2 0 0 0 0 0 2 3 4 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
データ型の概念を説明できる。 0 0 2 0 0 0 0 0 2 3 4 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
制御構造の概念を理解し、条件分岐を記述できる。 0 0 2 0 0 0 0 0 2 3 4 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
制御構造の概念を理解し、反復処理を記述できる。 0 0 2 0 0 0 0 0 2 3 4 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ソフトウェアの作成(プログラミング)
与えられた問題に対して、それを解決するためのソースプログラムを記述できる。 3 0 2 0 3 0 0 0 2 3 4 0 0 3 3 0 0 0 0 0 0 3 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4
ソフトウェア生成に必要なツールを使い、ソースプログラムをロードモジュールに変換して実行できる。 3 0 2 0 0 0 0 0 2 3 4 0 0 3 3 0 0 0 0 0 0 3 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4
与えられたソースプログラムを解析し、プログラムの動作を予測することができる。 0 0 2 0 0 0 0 0 2 3 4 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
言語処理系(プログラミング)
主要な言語処理プロセッサの種類と特徴を説明できる。 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4
ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。 0 0 0 0 0 0 0 0 0 0 2 0 0 1 3 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4
計算モデル(プログラミング)
プログラミング言語は計算モデルによって分類されることを説明できる。 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0
主要な計算モデルを説明できる。 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0
実践的プログラミング(プログラミング)
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを設計できる。 3 0 0 0 2 0 0 0 0 0 3 0 0 3 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4
要求仕様に従って、いずれかの手法により動作するプログラムを設計することができる。 0 0 0 0 0 0 0 0 0 0 3 0 0 2 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0
要求仕様に従って、いずれかの手法により動作するプログラムを実装することができる。 0 0 0 0 0 0 0 0 0 0 3 0 0 2 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0
要求仕様に従って、標準的な手法により実行効率を考慮したプログラムを実装できる。 4 0 0 0 0 0 0 0 0 0 3 0 0 1 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
アルゴリズム(ソフトウェア)
アルゴリズムの概念を説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
与えられたアルゴリズムが問題を解決していく過程を説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
同一の問題に対し、それを解決できる複数のアルゴリズムが存在しうることを説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
整列、探索など、基本的なアルゴリズムについて説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
時間計算量によってアルゴリズムを比較・評価できることを説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
領域計算量などによってアルゴリズムを比較・評価できることを説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
データ構造(ソフトウェア)
コンピュータ内部でデータを表現する方法(データ構造)にはバリエーションがあることを説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
同一の問題に対し、選択したデータ構造によってアルゴリズムが変化しうることを説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
リスト構造、スタック、キュー、木構造などの基本的なデータ構造の概念と操作を説明できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
リスト構造、スタック、キュー、木構造などの基本的なデータ構造を実装することができる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ソフトウェア工学(ソフトウェア)
ソフトウェアを中心としたシステム開発のプロセスを説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 3 0 0 0 0 0 0 0
プログラム解析(ソフトウェア)
ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
同じ問題を解決する複数のプログラムを計算量等の観点から比較できる。 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
オペレーティングシステムの基礎(システムプログラム)
コンピュータシステムにおけるオペレーティングシステムの位置づけを説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 3 0 0 0 0 0 0 0 4 0 0 4 0 0 0 0 0
プロセス管理やスケジューリングなどCPUの仮想化について説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 3 0 0 0 0 0 0 0 4 0 0 4 0 0 0 0 0
排他制御の基本的な考え方について説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0
記憶管理の基本的な考え方について説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0
コンパイラ(システムプログラム)
形式言語の概念について説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0
オートマトンの概念について説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0
コンパイラの役割と仕組みについて説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
形式言語が制限の多さにしたがって分類されることを説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0
正規表現と有限オートマトンの関係を説明できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0
プログラミング基礎実習(情報系【実験・実習】)
与えられた問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。 0 0 0 0 0 0 0 0 0 0 3 0 0 3 3 0 0 0 3 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0
ソフトウェア生成に利用される標準的なツールや環境を使い、ソースプログラムをロードモジュールに変換して実行できる。 0 0 0 0 0 0 0 0 0 0 3 0 0 3 3 0 0 0 3 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0
ソフトウェア開発の現場において標準的とされるツールを使い、生成したロードモジュールの動作を確認できる。 0 0 0 0 0 0 0 0 0 0 3 0 0 3 3 0 0 0 3 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0
フローチャートなどを用いて、作成するプログラムの設計図を作成することができる。 0 0 0 0 2 0 0 0 0 0 3 0 0 3 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
問題を解決するために、与えられたアルゴリズムを用いてソースプログラムを記述し、得られた実行結果を確認できる。 4 0 0 0 0 0 0 0 0 0 3 0 0 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
論理回路設計実習(情報系【実験・実習】)
与えられた仕様に合致した組合せ論理回路や順序回路を設計できる。 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0
基礎的な論理回路を構築し、指定された基本的な動作を実現できる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
論理回路などハードウェアを制御するのに最低限必要な電気電子測定ができる。 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
開発環境構築実習(情報系【実験・実習】)
標準的な開発ツールを用いてプログラミングするための開発環境構築ができる。 0 0 0 0 0 0 0 0 0 0 2 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
要求仕様にあったソフトウェア(アプリケーション)を構築するために必要なツールや開発環境を構築することができる。 0 0 0 0 0 0 0 0 0 0 2 0 0 0 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
アプリケーションの設計と製作(情報系【実験・実習】)
要求仕様に従って標準的な手法によりプログラムを設計し、適切な実行結果を得ることができる。 0 0 0 0 0 0 0 0 0 0 2 0 0 2 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0