亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

用棧實現隊列的方法

發布時間:2021-06-23 10:50:37 來源:億速云 閱讀:129 作者:chen 欄目:大數據

這篇文章主要講解了“用棧實現隊列的方法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“用棧實現隊列的方法”吧!

使用棧實現隊列的下列操作:

push(x) -- 將一個元素放入隊列的尾部。
pop() -- 從隊列首部移除元素。
peek() -- 返回隊列首部的元素。
empty() -- 返回隊列是否為空。
示例:

MyQueue queue = new MyQueue();

queue.push(1);
queue.push(2);  
queue.peek();  // 返回 1
queue.pop();   // 返回 1
queue.empty(); // 返回 false
說明:

你只能使用標準的棧操作 -- 也就是只有 push to top, peek/pop from top, size, 和 is empty 操作是合法的。
你所使用的語言也許不支持棧。你可以使用 list 或者 deque(雙端隊列)來模擬一個棧,只要是標準的棧操作即可。
假設所有操作都是有效的 (例如,一個空的隊列不會調用 pop 或者 peek 操作)。

  • 自己嘗試解題 ok

public class MyQueue {
    Stack<Integer> s1 = new Stack<>();
    Stack<Integer> s2 = new Stack<>();

    /**
     * Initialize your data structure here.
     */
    public MyQueue() {
    }

    /**
     * Push element x to the back of queue.
     */
    public void push(int x) {
        s1.push(x);
    }

    /**
     * Removes the element from in front of queue and returns that element.
     */
    public int pop() {
        while(!s1.isEmpty()){
            s2.push(s1.pop());
        }
        int i = s2.pop();
        while(!s2.isEmpty()){
            s1.push(s2.pop());
        }
        return i;
    }

    /**
     * Get the front element.
     */
    public int peek() {
        while(!s1.isEmpty()){
            s2.push(s1.pop());
        }
        int i = s2.peek();
        while(!s2.isEmpty()){
            s1.push(s2.pop());
        }
        return i;
    }

    /**
     * Returns whether the queue is empty.
     */
    public boolean empty() {
        return s1.isEmpty();
    }
}

感謝各位的閱讀,以上就是“用棧實現隊列的方法”的內容了,經過本文的學習后,相信大家對用棧實現隊列的方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

农安县| 兴安盟| 左贡县| 新绛县| 含山县| 金乡县| 黔西县| 昭觉县| 奉新县| 镇赉县| 景东| 县级市| 家居| 望城县| 北辰区| 常宁市| 沧源| 朝阳县| 云南省| 额济纳旗| 石门县| 新和县| 东辽县| 临海市| 会同县| 荥阳市| 慈利县| 政和县| 香格里拉县| 汾西县| 达拉特旗| 开化县| 农安县| 高邮市| 临朐县| 奉新县| 古田县| 蓝田县| 安阳县| 丰宁| 石门县|