232. Implement Queue using Stacks - Easy
前往題目
這題做過,照搬一下
想法
- 這題一開始題目條件沒看清楚所以想破頭腦也想不出一個stack怎麼實作queue
- 看了解法覺得調用的方法就是個死循環,放到vscode一步一步看馬上就知道原因了
- 是因為有些方法是直接調用stack的,所以其實很簡單
- 的確是Easy的題目,但沒想通就永遠都是hard
思路
- 這裡使用兩個stack,一個input負責儲存資料,一個output負責還原成queue然後做相應動作
Push
- 直接push到input stack就好
Pop
- 使用自己寫的peek拿到output的top,就是queue的head
- 然後再用stack內建的pop把output的top去掉
Peek
- 確保output沒東西,有的話直接peek top是甚麼就完成peek了
- 沒東西的話就從input把所有東西push到output,這樣output就是一個queue了,因為input的順序會被反轉
Empty
- 直接調用stack內建的empty,兩個stack都是空的就是空
Code
2023/12/17
- 大致上沒寫出來🤣但至少記得要用兩個stack,只是忘了一個當input一個當output
2024/08/05
- 寫出來了,剩一點小
bug
232. Implement Queue using Stacks - Easy
https://f88083.github.io/2023/12/17/232-Implement-Queue-using-Stacks-Easy/