728x90
이번 포스팅의 주제는 Javascript로
Stack ( LIFO : 후입선출)
Queue ( FIFO : 선입선출 )
자료구조 배열 구현하기 입니다.
소스코드 예제와 함께 구현해 보겠습니다.
각각 메소드는 4개로 구성하였습니다.
push : Stack( Queue )의 가장 위의 인덱스에 요소 추가
isEmpty : Stack( Queue )이 빈 배열인지 진리 여부 반환
pop : Stack의 가장 윗 부분( 마지막 인덱스 ) 반환, Queue의 경우 가장 첫 부분 ( 시작 인덱스 ) 반환
size : Stack( Queue ) 배열의 크기 반환
Stack의 예시코드 입니다.
class Stack{
constructor(){
// stack을 구현할 배열 초기화
this._arr = [];
}
push( element ){
this._arr.push(element)
}
isEmpty(){
if( this._arr.length === 0){
return true
}
return false
}
pop(){
return this._arr[this._arr.length - 1]
}
size(){
return this._arr.length
}
}
const stack = new Stack()
const element = 1
stack.push( element )
console.log( stack.isEmpty() )
console.log( stack.pop() )
console.log( stack.size() )
간단한 Javascript class로 구현하였습니다.
다음은 Queue입니다.
class Queue{
constructor(){
// queue 배열 초기화
this._arr = [];
}
push( element ){
this._arr.push(element)
}
isEmpty(){
if( this._arr.length === 0){
return true
}
return false
}
pop(){
return this._arr[0]
}
size(){
return this._arr.length
}
}
const queue = new Queue()
const element = 1
queue.push( element )
console.log( queue.isEmpty() )
console.log( queue.pop() )
console.log( queue.size() )
Javascript class와 4가지 메서드로 간단하게 stack과 queue를 구현해보았습니다.
728x90
'Algorithm > Linear' 카테고리의 다른 글
Queue란? Java Queue Class에 대해 알아보자! (0) | 2022.01.19 |
---|---|
Stack이란 ?, Java Stack class 사용법 & 예제 (0) | 2022.01.19 |