0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

アルゴリズム・データ構造について

Posted at

・アルゴリズムとは

 アルゴリズムとは、プログラムの処理の手順のことである。例えるなら、料理のレシピのことである。

例)カレー(料理)なら
⇒玉ねぎ、じゃがいも、肉、ニンジンなどを切ってルーを入れて…

 プログラム(奇数かどうか判断)なら
⇒この値をif文にかけて2で割った時、1余るのなら…

・フローチャートとは

 フローチャートとはプログラムの処理の手順をわかりやすく書く方法のことである。

細長い楕円形⇒プログラムの開始と終了
ひし形⇒条件分岐
台形⇒ループ文
長方形⇒任意の処理
を表す。

・データ構造

 プログラミング言語では主に2つの方法を使ってデータをまとめる。その方法とは配列リストの2種類である。

・配列とは

 配列とは、データをまとめる方法の1つである。

特徴としては①予め決めた量、はじめに宣言しただけの量のデータしか入れることができない
      ②データのアドレス(データが配列のどこにあるかを示すもの)が数字の順番で、データアクセスの処理がリストよりも軽い
      ③配列の中に配列を作ることができる(多次元配列)

・リストとは

 リストとは配列と同様にデータをまとめる方法の1つである。

特徴としては①データの追加、削除が自由である。
      ②データをアドレスとポインタを使用して管理しているためデータアクセスの処理が配列よりも重くなる

・配列とリストの使い分け

 配列とリストは
①予め登録するデータ量が決まっているのなら配列、そうでないのならリスト
②データへのアクセスが頻繁であれば配列、そうでないならリスト
③データの追加、削除を頻繁に行うのであればリスト、そうでないのなら配列 のように使い分ける。

・データの探索と整理

 次は、まずデータがどのように出入りするのか、その次に配列やリストの中にあるデータを効率よく探す、整理する方法について学習していく。

・スタックとキュー

 スタックキューとは配列やリストにあるデータがどのように出入りするのかについてのものである。

スタックはどんどんデータを上に積み重ねていくデータの入れ方である。
スライド7.PNG

図のようにデータを上から積み重ねていくため、一番最初に入れたデータ1を取得するにはその上にあるデータを全て取り出す必要がある。反対に新しいデータをすぐに取り出せるメリットも存在する。

キューはデータをどんどん積み上げていくが、取り出し方が古い方からという特徴がある。スライド8.PNG

図のように先に入れたデータから取り出していくので、データ1はすぐに取り出すことができる。しかし、スタックと異なり新しく入れたデータを取り出すには古いデータを取り出す必要がある。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?