스택, LIFO (LIFO) 원칙의 순서 설정을 따릅니다.
큐는 FIFO에 따라 (FIFO) 원칙의 순서 집합입니다.
자바 스크립트에서, 우리는 쉽게 관련 방법의 배열을 통해 모두 데이터 구조를 확장 할 수 있습니다.
자바 스크립트 코드의 스택 달성하기 위해 :
/ ** * 여기에 데이터 구조를 초기화합니다. * / var에 MyStack = 함수 () { this._data = []; }; / ** * 푸시 요소 스택에 X. * @param {NUMBER}의 X *의 공극 @return {} * / MyStack.prototype.push = 함수 (X) { this._data.push (X); }; / ** * 스택의 상단에있는 요소를 제거하고 해당 요소를 반환합니다. * @return {NUMBER} * / MyStack.prototype.pop = 함수 () { ) (this._data.pop를 리턴; }; / ** * 최상위 요소를 가져옵니다. * @return {NUMBER} * / MyStack.prototype.top = 함수 () { 복귀 this._data [this._data.length -1] }; / ** * 스택이 비어 있는지 여부를 반환합니다. * @return 부울 {} * / MyStack.prototype.empty = 함수 () { this._data.length === 0을 리턴; }; / ** * 귀하의 MyStack 객체가 같은 인스턴스 및 호출됩니다 : * VAR OBJ = 새로운 MyStack () * obj.push (X) * var에 PARAM_2 = obj.pop () * var에 param_3 = obj.top () * VAR param_4 obj.empty = () * /
달성하기 위해 자바 스크립트 코드를 대기열 :
/ ** * 여기에 데이터 구조를 초기화합니다. * / var에 MyQueue 인 = 함수 () { this._queue = []; }; / ** * 큐의 후면 X 푸시 소자. * @param {NUMBER}의 X *의 공극 @return {} * / MyQueue.prototype.push = 함수 (X) { this._queue.push (X); }; / ** * 큐 앞로부터 요소를 제거하고 해당 요소를 반환한다. * @return {NUMBER} * / MyQueue.prototype.pop = 함수 () { ) (this._queue.shift를 리턴; }; / ** * 전면 요소를 가져옵니다. * @return {NUMBER} * / MyQueue.prototype.peek = 함수 () { 복귀 this._queue [0]; }; / ** * 큐가 비어 있는지를 돌려줍니다. * @return 부울 {} * / MyQueue.prototype.empty = 함수 () { this._queue.length === 0을 리턴; }; / ** * 귀하의 MyQueue 인 객체가 같은 인스턴스 및 호출됩니다 * var에 OBJ = 새로운 MyQueue 인 () * obj.push (X) * var에 PARAM_2 = obj.pop () * var에 param_3 = obj.peek () * VAR param_4 obj.empty = () * /