データ構造
(元データは紙のノートにあるためすべてを書ききれていない)
概要
「データ」について
4大経営資源の1つ
ヒト・モノ・カネ・データで構成される
語源・意味
「datum」の複数形が「data」
「datum」はラテン語の「dare」が語源
「do」の「完了分詞・中性・単数」型で「与えられたもの」という意味
データ構造の一覧
スタック
Last In First Out
Array.prototype.push() や Array.prototype.pop() で表現できる
キュー
First In First Out
配列
Linked List(連結リスト)
配列と同じく要素の集合だが、要素の構成要素としてデータとポインターが存在する(これを称してノードという)
木構造
binary tree(二分木)
binary search tree(二分探索木)
trie(トライ木)
なぜデータ構造が必要なのか
人・ソフトウェア両方から同じようにアクセスできるようにするため
構造化することでデータ分析を効率的にするため
非構造化データを分析するのは難しい
実例
スタック
キュー
配列
二次元配列の例として、将棋やチェスの盤面など
Linked List(連結リスト)
木構造
binary tree(二分木)
binary search tree(二分探索木)
trie(トライ木)
オートコンプリート
スペルチェック
まとめ
TODO
関連リンク
「datum etymology」で検索して出てきた
連続・離散
一時データの保存先(CPUのレジスター・キャッシュなど)
CPUから見て、メモリへのアクセス速度は、CPUのレジスタやキャッシュと比較して遅いので、L1・L2・L3キャッシュによく使うデータや処理をコピーできているのが良くて、それゆえにAMDだとL3キャッシュが大きいX3D系はゲーマーにとって良いという認識
CPUから記憶装置(メモリ・SSDなど)にアクセスする速度が遅いために、CPUの処理速度を高めてもPCの処理速度が高まるわけではないことを指した概念
イテラブルなオブジェクトを
関連するかもしれない雑多なメモ
MacのSMCリセットは溜まったデータを消して、初期化する的なことなのかな
アナログはデジタルに対するレトロニム
「アナログだな」というのは「連続的だな」と言っているということ?(発言者はそう意図してなさそう)
「これからはデジタルだ」というのは「これからは離散的だ」と言っているということ?(発言者は略)