leetcode 225 用隊列實現棧(JS)

  • 使用隊列實現棧的下列操做:javascript

    • push(x) -- 元素 x 入棧
    • pop() -- 移除棧頂元素
    • top() -- 獲取棧頂元素
    • empty() -- 返回棧是否爲空
  • 注意:java

    • 你只能使用隊列的基本操做-- 也就是 push to back, peek/pop from front, size, 和 is empty 這些操做是合法的。
    • 你所使用的語言也許不支持隊列。 你能夠使用 list 或者 deque(雙端隊列)來模擬一個隊列 , 只要是標準的隊列操做便可。
    • 你能夠假設全部操做都是有效的(例如, 對一個空的棧不會調用 pop 或者 top 操做)。
javascript中沒有隊列這種數據結構,所以用數組來實現
var MyStack = function() {
    this.stack = []; //初始化空數組
    this.top = 0; //記錄棧頂的位置
}

Mystack.prototype.push = function(x) {
    this.stack.push(x);
    this.top++;
}

Mystack.prototype.pop = function(x) {
    return this.stack[--this.top]; //返回棧頂元素並將top值減一
}

MyStack.prototype.empty = function() {
    return !this.len
};
相關文章
相關標籤/搜索