アルゴリズムとプログラミング

データ構造

データ構造は、データの関係や処理する順番の形式のこと。次のような種類があるよ。


h5
木構造
木構造 ツリー構造

上から下に枝分かれした階層型のデータ構造。

ツリー構造ともいうよ。



h5
キュー
キュー

先に入れたデータから先に取り出すデータ構造。

例えば、ABCの順で入れた場合、ABCの順に取り出すよ。



h5
スタック
スタック

後から入れたデータから先に取り出すデータ構造。

例えば、ABCの順で入れた場合、CBAの順で取り出すよ。

また、入れることをPush、出すことをPopというよ。



h5
リスト
リスト

データ同士を繋げたデータ構造。

次の場所を示すポインタによって、どの位置でもデータの追加や削除ができるよ。

アルゴリズム

アルゴリズムは、問題を解決するための手順のこと。アルゴリズムを記述する方法には次のようなものがあるよ。


POINT

01

フローチャート


アルゴリズムを可視化した図のこと。


POINT

02

擬似言語


アルゴリズムの理解を助けるために使われる、擬似的なプログラミング言語


POINT

03

決定表


起こり得る条件対応を表にまとめたもの。


探索のアルゴリズム

探索のアルゴリズムは、大量のデータの中から目的のデータを探し出すアルゴリズムのこと。次のような種類があるよ。


POINT

01

線形探索法


データが整列されていない状態で、先頭から順番に目的のデータと比較し、一致するデータを探していく方法。


POINT

02

2分探索法


データが小さい順または大きい順に整列されている状態で、中央にあるデータから、前にあるか後ろにあるかの判断を繰り返して目的のデータを探すよ。


POINT

03

ハッシュ法


ハッシュ関数で求めたハッシュ値によって、データの格納位置を探す方法。

ハッシュ関数は、与えられたデータに処理をしてハッシュ値を生成するもの。

元のデータが同じであれば、必ず同じハッシュ値が出力される。