📝プログラミング: データ構造
データ構造とは #
データの集まりをコンピュータの中で効果的に扱うため, 一定の形式に系統立てて格納するときの形式.
Container: コンテナ #
コンテナとはオブジェクトの集まりを表現するデータ構造. コレクションともいう.
- コンテナ (データ型) - Wikipedia
- 配列
- スタック
- キュー
- 連想配列データと別のデータやデータ構造を一対一に関連付けて格納する
- ハッシュテーブル
- ルックアップテーブル
- 線形リストデータが次の (あるいは前の) データへの参照を持つ.
- グラフデータが任意の他のデータへの参照を持つ.
- 木構造一つの頂点から樹状に枝分かれしたグラフ.
- グラフデータが任意の他のデータへの参照を持つ.
- 配列
各データ構造の詳細 #
Record #
データと別のデータやデータ構造を一対一に関連付けて格納するもの.
もっとも基本的なデータ型.
- Atom
- Tuple
- List
List #
Tuple,Struct #
異なるデータ型であっても格納できる. ベクトルやリストは型がすべて同じものしか格納できない.
Record, Struct, 構造体と同義で利用されることもある.
Tree #
Stream #
要素は遅延評価される. そのため, ストリームは無限の長さをもつことができる.
For streams, this is a by-name parameter. That’s why the second argument to Stream.cons is not evaluated atthe point of call.
Instead, it will be evaluated each time someone calls tail on a Stream object.