LeetCode 棧 棧排序

2022-08-20 08:48:12 字數 1086 閱讀 5294

棧排序。 編寫程式,對棧進行排序使最小元素位於棧頂。最多只能使用乙個其他的臨時棧存放資料,但不得將元素複製到別的資料結構(如陣列)中。該棧支援如下操作:push、pop、peek 和 isempty。當棧為空時,peek 返回 -1。

示例:

輸入:

["sortedstack", "push", "push", "peek", "pop", "peek"]

[, [1], [2], , , ]

輸出:[null,null,null,1,null,2]

輸入:

["sortedstack", "pop", "pop", "push", "pop", "isempty"]

[, , , [1], , ]

輸出:[null,null,null,null,null,true]

說明:

使用兩個棧,乙個棧 s 用來儲存資料,另乙個棧是輔助棧 help;

入棧:

入棧類似於最小棧的做法;

出棧:

獲取棧頂元素:

**如下:

class sortedstack 

void push(int val)

s.push(val);

while(!help.empty())

}void pop()

int peek()

bool isempty()

};/**

* your sortedstack object will be instantiated and called as such:

* sortedstack* obj = new sortedstack();

* obj->push(val);

* obj->pop();

* int param_3 = obj->peek();

* bool param_4 = obj->isempty();

*/

leetcode 棧 155 最小棧

設計乙個支援 push,pop,top 操作,並能在常數時間內檢索到最小元素的棧。push x 將元素 x 推入棧中。pop 刪除棧頂的元素。top 獲取棧頂元素。getmin 檢索棧中的最小元素。示例 minstack minstack new minstack minstack.push 2 m...

LeetCode 簡單 棧 155 最小棧

設計乙個支援 push pop top 操作,並能在常數時間內檢索到最小元素的棧。push x 將元素 x 推入棧中。pop 刪除棧頂的元素。top 獲取棧頂元素。getmin 檢索棧中的最小元素。示例 輸入 minstack push push push getmin pop top getmin...

LeetCode面試題 03 05 棧排序

棧排序。編寫程式,對棧進行排序使最小元素位於棧頂。最多只能使用乙個其他的臨時棧存放資料,但不得將元素複製到別的資料結構 如陣列 中。該棧支援如下操作 push pop peek 和 isempty。當棧為空時,peek 返回 1。class sortedstack public void push ...