データ構造
カテゴリー: #アンラーニング #リスキリング
kuboshoのアンラーニング・リスキリングの1日目は「データ構造」を取り扱う。
(元データは紙のノートにあるためすべてを書ききれていない)
概要
「データ」について
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(トライ木)
なぜデータ構造が必要なのか
人・ソフトウェア両方から同じようにアクセスできるようにするため
構造化することでデータ分析を効率的にするため
非構造化データを分析するのは難しい
実例
スタック
Call stack (コールスタック) - MDN Web Docs 用語集 | MDN
キュー
配列
二次元配列の例として、将棋やチェスの盤面など
チェスの盤面はArray - JavaScript | MDNに載っている
ポケモンのデータ構造 - pokemonbug @ ウィキ - atwiki(アットウィキ)
Linked List(連結リスト)
木構造
binary tree(二分木)
binary search tree(二分探索木)
trie(トライ木)
オートコンプリート
スペルチェック
ルーティング(Honoのtrie router)
まとめ
TODO
関連リンク
Datum - Etymology, Origin & Meaning
「datum etymology」で検索して出てきた
「data(データ)」の語源、知っていますか? 第5回「今週のSPACE ENGLISH」 | 宙畑
「構造化」とは結局なにをすることなのか、まとめてみた|もとやま📚新刊『仕事ができる人がキリの悪い時間にやっていること』
構造化データとは何ですか? - 構造化データの説明 - AWS
集合 - Wikipedia
【集合】必ず覚えなくてはならない6つの記号と3つの法則|高校生向け受験応援メディア「受験のミカタ」
【高校数学Ⅰ】「集合と要素とは?」 | 映像授業のTry IT (トライイット)
高校生が数学Ⅰで学習する「集合と命題」の用語と考えるコツを具体例とともに | 新時代の学習スタイルを全国に普及するための情報発信ブログ | 数学のオンライン授業で学びを支えるさくら互学院
連続・離散
第398話|ビジネスデータ分析を変える「連続データの離散化」で見えてくる新たな洞察 – セールスアナリティクス
連続:アナログ - Wikipedia
離散:デジタル - Wikipedia
一時データの保存先(CPUのレジスター・キャッシュなど)
AMD Ryzen™ 7 9800X3D デスクトップ プロセッサ
CPUから見て、メモリへのアクセス速度は、CPUのレジスタやキャッシュと比較して遅いので、L1・L2・L3キャッシュによく使うデータや処理をコピーできているのが良くて、それゆえにAMDだとL3キャッシュが大きいX3D系はゲーマーにとって良いという認識
コーディング時に知ってはおきたい CPU のキャッシュの特性 #Rust - Qiita
CPUの仕組みとレジスタの役割 #基礎知識 - Qiita
キャッシュメモリ - Wikipedia
フォン・ノイマン・ボトルネック - Wikipedia
CPUから記憶装置(メモリ・SSDなど)にアクセスする速度が遅いために、CPUの処理速度を高めてもPCの処理速度が高まるわけではないことを指した概念
イテレータ ヘルパーがベースラインに新規に追加されました | Blog | web.dev
イテラブルなオブジェクトを
関連するかもしれない雑多なメモ
MacのSMCリセットは溜まったデータを消して、初期化する的なことなのかな
アナログはデジタルに対するレトロニム
「アナログだな」というのは「連続的だな」と言っているということ?(発言者はそう意図してなさそう)
「これからはデジタルだ」というのは「これからは離散的だ」と言っているということ?(発言者は略)
#アドベントカレンダー