그림 그릴때 다음 Node 주소 공간이라고 써야했는데, 데이터라고 써버렸다..
push()
제거할 때는 pop()
을 사용해서 처리할 수 있다.class Stack {
constructor(){
this.arr = [];
this.idx = 0;
}
push(value){
this.arr[this.idx++] = value;
}
pop(){
if (this.idx === 0) return null;
else {
// 잘 안되서 고민중
// 1. 데이터 하나를 추출하니 idx값이 줄어든다
// 2. 추출 후의 arr 배열 선언?흠..
}
}
peek(){
return this.arr.slice(-1);
}
isEmpty(){
return this.arr.length === 0
}
}
코드를 짜본 뒤 다른 사람들은 어떻게 짯는지 검색을 해보니까 직접 만든 pop이나 push안에 또 pop이나 push를 써서 만들었던데.. 그 메소드들을 재사용하면 직접 만든 의미가 있는건가..?
Class Queue {
constructor(){
this.arr = [];
}
enqueue(value){
this.arr.push(value);
}
dequeue(){
this.arr.shift();
}
}
이번엔 메소드를 사용해서 만들어보았다
출처
개념 이해: 엔지니어대한민국(유튜브)