Data Structureを整理してみましょう.//Part1
8315 ワード
Data Structure,
複数のデータセットの使用と格納方法を定義します.
1. Stack
ㅇLIFO(Last In First Out)、初めて最後の出現!
山積み
下から皿を積み上げ、一番上の皿から使う構造に似ています.
下図を見ると分かりやすい.
上の図を見て、方法のコードを確認してください.
次はStackの基本的な方法です.
Class Stack {
Constructor() {]
//기본적으로 있어야하는 프로퍼티들.
this.storage = {}; // 자료를 저장할 공간, 빈 객체를 처음 값으로.
this.top = 0; // 자료의 크기, 0을 처음값으로.
}
size() {
//객체를 배열화 해서 길이를 리턴
return Object.keys(this.storage).length;
}
push(element) {
//마지막에 element push
this.top++;
this.storage[this.top] = element;
}
pop() {
//마지막 값 삭제
let result = this.storage[this.top];
delete this.storage[this.top];
this.top--;
return result;
}
}
2. Queue
ㅇFIFP(First In,First Out)、先に行く先に出て!
まるで遊園地に並んでいる人のようです.
最初に並んだ人が最初に乗り物に乗るような仕組みです.
下の写真を見ると分かりやすいです.
上の図を見て、方法のコードを確認してください.
次はQueueの基本的な方法です
class Queue {
constructor() {
//기본적으로 있어야하는 프로퍼티들.
this.storage = {}; // 자료를 저장할 공간, 빈 객체를 처음 값으로.
this.front = 0; // Queue의 시작을 나타내는 값.
this.rear = 0; // Queue의 끝을 나타내는 값.
}
size() {
//객체를 배열화 해서 length 리턴
return Object.keys(this.storage).length;
}
enqueue(element) {
//끝에 element 삽입
this.storage[this.rear] = element;
this.rear++;
}
dequeue() {
//맨 앞의 값 제거
let result = this.storage[this.front];
delete this.storage[this.front];
this.front++;
return result;
}
}
Reference
この問題について(Data Structureを整理してみましょう.//Part1), 我々は、より多くの情報をここで見つけました https://velog.io/@900djob/Data-Structure를-정리해보자テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol