data structure
データ構造
名詞
複数形: data structures
data structureは、単にデータを保存する場所を指すのではなく、データの整理方法とその操作方法(挿入、削除、検索など)を定義した論理的な枠組みを指します。効率的なアルゴリズムを実装するためには、目的に応じて最適なdata structureを選択することが不可欠です。
効率性と選択の基準
異なるdata structureによって、特定の操作にかかる時間(時間計算量)や消費するメモリ量(空間計算量)が大きく異なります。例えば、大量のデータから特定の要素を高速に検索したい場合はハッシュテーブルが適していますが、データの順序を保持し、先頭や末尾への追加を頻繁に行う場合は連結リストが適しています。このように、開発者はトレードオフを考慮して最適な形式を選択します。
抽象データ型との関係data structureはしばしば抽象データ型(Abstract Data Type)と混同されますが、概念的な違いがあります。抽象データ型が何ができるかという論理的な仕様(インターフェース)を定義するのに対し、data structureはそれを具体的にどのようにメモリ上に実装するかという物理的な構成を指します。例えば、キューという抽象的な概念を、配列を用いて実装するか、あるいは連結リストを用いて実装するかによって、具体的なdata structureが異なります。
意味
関連語
algorithmarrayliststackqueuetreegraphhashtablenodepointerindexmemorybufferheaplinked listbinary treepriority queueadjacency matrixadjacency listtriesetmapdictionarycomplexityefficiencyoptimizationrecursioniterationtraversalsortingsearchingallocationdeallocationpointer arithmeticoverflowunderflowlatencythroughputvariableconstantobjectclassinterfaceabstractionencapsulationinheritancepolymorphismbytebitwordstringintegerfloatbooleantuplerecordfieldmetadatadatabasecacheregistrypipelinecompilerinterpreterruntimearchitecturelogicsyntaxsemanticsparadigmimplementationspecification