2.アルゴリズム

「アルゴリズム」における目標

アルゴリズムにおける目標は、次の3つになっています。

  1. アルゴリズム,流れ図の考え方,表現方法を修得し,応用する。
  2. 代表的なアルゴリズムを修得し,応用する。
  3. アルゴリズムの設計方法を修得し,応用する。

それぞれの基礎を習得した上で、応用できるよう学習をすすめていきます。

2.1. 流れ図

アルゴリズムや流れ図(フローチャート)の考え方,記号,順次,判定,繰返しなど,処 理手順の表現方法を理解し,流れ図を描く方法を理解する。

用語例

端子,処理,定義済み処理,判断,ループ端,データ,線

2.2. 代表的なアルゴリズム

2.2.1. 整列・併合・探索のアルゴリズム

整列のアルゴリズム,併合のアルゴリズム,探索のアルゴリズムを理解する。

用語例

選択ソート,バブルソート,マージソート,挿入ソート,シェルソート,クイックソート,ヒープソート,線形探索法,2 分探索法,ハッシュ表探索法,シノニム対策

2.2.2. 再帰のアルゴリズム

再帰的アルゴリズムの考え方,特徴,実現に適したデータ構造を理解する。

2.2.3. グラフのアルゴリズム

グラフのアルゴリズムを理解する。

用語例

深さ優先探索,幅優先探索,最短経路探索

2.2.4. 文字処理のアルゴリズム

文字列処理のアルゴリズムを理解する。

用語例

文字列照合,KMP 法(クヌース・モリス・プラット法),BM 法(ボイヤ・ムーア法)

2.2.5. ファイル処理のアルゴリズム

バッチ処理などで使用される整列処理,併合処理,コントロールブレーク処理,編集処理のアルゴリズムを理解する。

2.2.6. 近似アルゴリズム

近似アルゴリズムを理解する。

用語例

近似計算

2.2.7. 確率アルゴリズム

モンテカルロ法を例として確率アルゴリズムを理解する。

2.2.8. 遺伝的アルゴリズム

最適化問題への進化論の適用例であることを理解する。

2.2.9. 自然言語処理のアルゴリズム

情報検索,機械翻訳などを例に,自然言語処理のアルゴリズムを理解する。

2.2.10. データ圧縮のアルゴリズム

データ圧縮のアルゴリズムを理解する。

用語例

ランレングス法,ハフマン法

2.2.11. 図形に関するアルゴリズム

3次元図形処理アルゴリズムを理解する。

用語例

Zバッファ法,スキャンライン法,レイトレーシング法

2.2.12. 記憶域管理アルゴリズム

OSのメモリ管理の方法について,空きメモリ管理のためのデータ構造,メモリの割当て,開放などのアルゴリズムを理解する。

2.3. アルゴリズム設計

アルゴリズムは,擬似言語,流れ図,決定表(デシジョンテーブル)などを用いて表現す ることを理解する。また,アルゴリズムの設計方法を理解する。

用語例

再帰,分割統治法