JavaScriptデータ構造基礎(1)
12195 ワード
#Javascriptのデータ構造
Stack 📌の第1の出力構造を持つ釣魚島. の第1入力(FIFO)構造を有する. オブジェクトを参照することによって実現することができる. デュアル接続リストも実装できます.prevを追加し、双方向参照を実現します. O(1)のアクセス性->は、時間の複雑さの低減に決定的な影響を及ぼす. ES 6から、Map資料構造が追加され、使い勝手が良くなりました. Mapと同様ですが、重複値は許可されません. ES 6標準構文
Stack 📌
const stack = [];
// push 값을 스택에 할당한다.
stack.push(1);
stack.push(2);
stack.push(3);
stack[stack.length-1]; // peek : 3 -마지막에 삽입된 값
stack.pop(); // 3
stack.pop(); // 2
stack.pop(); // 1
//삽입순서와 반대순서로 값을 뺀다
Queue 📌const queue = [];
queue.push(1); // enqueue 1
queue.push(2); // enqueue 2
queue.push(3); // enqueue 3
queue.shift(); // dequeue 1
queue.shift(); // dequeue 2
queue.shift(); // dequeue 3
// 삽입순서와 같은 순서로 값을 뺀다.
Linked List 📌function Node(val) {
this.val = val;
this.next = null;
}
let head = new Node(0);
let node1 = new Node(1);
let node2 = new Node(2);
head.next = node1;
node1.next = node2;
function Node(val) {
this.val = val;
this.next = null;
this.prev = null;
}
let head = new Node(0);
let node1 = new Node(1);
let node2 = new Node(2);
head.next = node1;
node1.next = node2;
node1.prev = head;
node2.prev = node1;
Map 📌const map = new Map();
map.set('p1', 1);
map.set('p2', 2);
map.get('p1'); // 1
map.get('p2'); // 2
Set 📌const set = new Set();
set.add(1);
set.add(2);
set.has(1); // true
set.has(2); // true
set.has(3); // false
Reference
この問題について(JavaScriptデータ構造基礎(1)), 我々は、より多くの情報をここで見つけました https://velog.io/@pji3504/javascript-자료구조-기초1テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol