国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

LeetCode-232-用棧實現(xiàn)隊列

2021-12-10 00:10 作者:雄獅虎豹  | 我要投稿

用棧實現(xiàn)隊列

題目描述:請你僅使用兩個棧實現(xiàn)先入先出隊列。隊列應(yīng)當(dāng)支持一般隊列支持的所有操作(push、pop、peek、empty):

實現(xiàn) MyQueue 類:

  • void push(int x) 將元素 x 推到隊列的末尾

  • int pop() 從隊列的開頭移除并返回元素

  • int peek() 返回隊列開頭的元素

  • boolean empty() 如果隊列為空,返回 true ;否則,返回 false

說明:

  • 你只能使用標(biāo)準(zhǔn)的棧操作 —— 也就是只有 push to top, peek/pop from top, size, 和 is empty 操作是合法的。

  • 你所使用的語言也許不支持棧。你可以使用 list 或者 deque(雙端隊列)來模擬一個棧,只要是標(biāo)準(zhǔn)的棧操作即可。

示例說明請見LeetCode官網(wǎng)。

來源:力扣(LeetCode) ??

鏈接:https://leetcode-cn.com/problems/implement-queue-using-stacks/ ??

著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。

解法一:雙棧實現(xiàn)隊列

MyQueue的2個棧分別為inStack和outStack,inStack用來入隊列,outStack用來出隊列,幾個方法的主要實現(xiàn)邏輯如下:

  • push(int x):將x入棧inStack。

  • pop():如果棧outStack不為空,直接從outStack中出棧一個;如果outStack為空,則如果inStack不為空,將inStack的全部元素出棧并且入棧outStack,然后從棧outStack中出棧一個,如果inStack也為空,則拋出異常該隊列為空。

  • peek():如果棧outStack不為空,返回outStack的棧頂元素;如果outStack為空,則如果inStack不為空,將inStack的全部元素出棧并且入棧outStack,然后返回outStack的棧頂元素,如果inStack也為空,則拋出異常該隊列為空。

  • empty():如果inStack和outStack都為空,返回true;否則返回true。


【每日寄語】 每天吃一顆糖,然后告訴自己:今天的日子,果然又是甜的。



LeetCode-232-用棧實現(xiàn)隊列的評論 (共 條)

分享到微博請遵守國家法律
平泉县| 宁武县| 英吉沙县| 师宗县| 德格县| 驻马店市| 海宁市| 来凤县| 乐清市| 衡水市| 长治县| 南郑县| 扶绥县| 庐江县| 博客| 灵山县| 桐庐县| 游戏| 广东省| 松原市| 毕节市| 肇东市| 扶风县| 会东县| 建昌县| 南川市| 乌拉特前旗| 乌拉特中旗| 孙吴县| 滨州市| 陇南市| 民县| 西和县| 民乐县| 安泽县| 夏邑县| 汉源县| 肃宁县| 大田县| 确山县| 上林县|