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?

データ構造を基本からまとめてみた【基礎】

0
Last updated at Posted at 2025-05-11

データ構造とは?

  • データ構造 : 素材であるデータをどのように扱うか ゴロだしのデータを扱うのは非効率
    ⇨ 用途に応じてデータの格納方法を工夫

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

  • アルゴリズム ⇨ 作業手順
  • データ構造 ⇨ データ(素材をどう扱うか?)

データ構造の基本

  • キュー : 古い方からデータを処理し、新しい情報は末尾へ追加
  • 構造体 : 1つのデータに情報を付加

データとは何か?

  • 素材であるデータを扱いやすくした仕組み ⇨ データ構造を考える前段階
  • データ : 0と1の電気信号のこと CPの中にはメモリIC(集積回路)が何千個もあり、データはその中に保存される
  • メモリIC : A0〜A9のピンでデータを保存 電気のON/OFFで、2進数の0と1を表す
  • メモリIC = ビルディング
  • ビルディングにデータを保存
ビルディングにデータを保存
1バイトのデータ
1バイトのデータ
1バイトのデータ
1バイトのデータ
1バイトのデータ
1バイトのデータ
1バイトのデータ
1バイトのデータ
1バイトのデータ
1バイトのデータ
1バイトのデータ
char chr = 'A',
int apple = 10;

データ構造とポインタの関係

  • データ構造はポインタの技術を元に成り立っている
  • ビルディングにデータを保存
  • 連結リストとポインタ ⇨ データ構造の中で最も基本かつ、ポインタとの関係を理解する上で重要!

配列・連結リストについて

  • 配列 : 同じデータ型の要素が大量に並ぶ ⇨ 要素へ瞬時にアクセスできる 番号を指定すればデータを瞬時に得ることができる
  • 配列のデメリット : ①メモリ上の連続したスロットを使用 ②要素の追加・削除が面倒
  • 連結リスト : データとポインタ 2つでセット
  • 連結リストのデメリット : 1個1個要素を辿るので探索に時間がかかる
  • 連結リストのメリット : 追加・削除などの変更に柔軟に対応できる
メリット デメリット
配列 要素へ瞬時にアクセスできる 追加・削除が面倒
連結リスト 追加・削除などの変更に柔軟に対応 探索に時間がかかる

配列は最も基本的なデータ構造 ⇨ メモリの物理的な形そのものだから ビルディングの形がそのまま配列のデータ構造と同じ

参考サイト

【1/4】データ構造の基本を学ぼう!(なぜデータ構造は必要か?)
【2/4】データ構造の基本を学ぼう!(メモリICとビルディング)
【3/4】データ構造の基本を学ぼう!(データ構造とポインタ)
【4/4】データ構造の基本を学ぼう!(配列と連結リスト)

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?