ArrayとList


Array

  • 論理アドレスと物理アドレスは同じ->O(1)
  • の開始点を知っていれば、連続したアドレスであるため、見つけることができます.(連続メモリ領域)
  • 複数のデータを1つの名前にグループ化する管理
  • .
  • インデックス(値の識別子)と値の対は
  • を構成する.
  • 長さ変更不可
  • メリット

  • index
  • の検索に使用
  • メモリ管理便利(連続)
  • 欠点

  • メモリロス(固定サイズ→削除されたインデックスビットが空)
  • は静的であり、コンパイル前に配列サイズ
  • を指定する必要があります.
  • コンパイル後は配列サイズを変更できません
  • List

  • 空き領域=シームレスデータマウント
  • は許可されていません.
  • ポインタアクセス→特定のインデックス値の検索にArrayよりも時間がかかる
  • .
  • インデックス:何番目のデータ(順序)を表します.識別子X
  • の連続性を保証できない->空間的な位置保障がなく、現金ヒット
  • を得ることが困難である.
  • 不連続メモリ領域
  • メリット

  • ポインタは以下のデータの位置を指し、
  • の挿入と削除を容易にする.
  • ダイナミック、サイズ不定
  • メモリは
  • を繰り返し使用できる.
  • 不連続でメモリ管理が容易

    欠点

  • 検索性能がよくない
  • ポインタは以下のデータを指し、追加のメモリ領域
  • を生成する.
        [ 		Value	 	|	 	*next 		]
        	   (현재 값)  		(다음 값의 주소)

    Array vs List


    Array:データのサイズを決定し、追加の挿入や削除を行わず、検索が必要な場合に有利


    List:データサイズが不定で、挿入、削除が頻繁で、検索が少ない場合に有利


    参考資料