[リソース構造]Graph/Tree/BST
Graph
ノードを接続する幹線(Edge)を一緒に配置するデータ構造
重み付けされていないグラフィック
let isConnected = {
seoul: {
busan: true,
daejeon: true
},
daejeon: {
seoul: true,
busan: true
},
busan: {
seoul: true,
daejeon: true
}
}
console.log(isConnected.seoul.daejeon) // true
console.log(isConnected.daejeon.busan) // true
理解する必要があるグラフィック用語。
全方位図
図
2つの頂点の間に直接の幹線がある場合、この2つの頂点は隣接する頂点です.
頂点から入る幹線が直接自分に入る場合は、自分のループを持つように表現されます.他の頂点を通らないのが特徴です.
グラフィックの表示方法:隣接マトリクス&隣接リスト
隣接行列
隣接行列は頂点間の隣接を表す行列で,2次元配列を持つ.
Aの頂点とBの頂点がつながっていれば、1、つながっていなければ0で表される表のようなものになります.
[0][2] === 1
[1][0] === 1
[1][2] === 1
[2][0] === 1
りんせつひょう
隣接リストは、各頂点がどの頂点に隣接しているかをリスト形式で表示します.
各頂点には、自分に隣接する他の頂点を含むリストがあります.
どうしてAがCより先ですか.この順番は重要ですか?
:幹線の順序は重要ではありません.
優先度を処理する必要がある場合は、より適切なデータ構造(ex.queue,heap)を使用するのが合理的です.
Tree
グラフィックの様々な構造における一方向グラフィックの構造.1本の枝から周囲に伸びる形態.ノードデータ構造
ツリーは階層モデルです.
BST(Binary Search Tree)
バイナリツリー(binary tree):最大2つのサブノードを含むツリーをバイナリツリーとして定義します.
バイナリ検索ツリー(binary search tree):左側のすべての子供がルートまたは親より小さい値として定義され、右側のすべての子供がルートまたは親より大きい値フィーチャーを持つバイナリ検索ツリーです.
すべてのリーフノードのレベルが同じで、すべてのレベルが塗りつぶされたツリー.
Reference
この問題について([リソース構造]Graph/Tree/BST), 我々は、より多くの情報をここで見つけました https://velog.io/@mihyun0416/자료구조-Graph-Tree-BSTテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol