1. 用兩個(gè)棧實(shí)現(xiàn)一個(gè)隊(duì)列
實(shí)現(xiàn)代碼:
2. 用兩個(gè)隊(duì)列實(shí)現(xiàn)一個(gè)棧
因?yàn)閜ush的時(shí)候是往任意一個(gè)不為空的棧里添加羹唠,棧是先進(jìn)后出所以把棧里的元素一個(gè)個(gè)彈出來(lái)保存在另一個(gè)棧,剩下最后一個(gè)就是最先的元素获雕,此時(shí)把它彈出就實(shí)現(xiàn)了隊(duì)列的pop出隊(duì)操作盒齿。下次pop的時(shí)候一樣再倒騰一遍就行了阿宅。
top也是一樣的原理橡类,只不過(guò)輸出了最先進(jìn)入的元素之后還得保存回去。
實(shí)現(xiàn)代碼:
3. 包含min函數(shù)的棧
思路就是用多一個(gè)棧來(lái)保存當(dāng)前棧的最小值