設計乙個具有getMin 功能的棧

2021-08-10 05:23:08 字數 562 閱讀 6578

設計乙個具有getmin()功能的棧:

1.push、pop、getmin()時間複雜度為o(1)

2.設計棧時可以使用現有的棧結構

/**

* 設計乙個具有getmin()功能的棧:

* 1.pop,push,getmin()時間複雜度為o(1)

* 2.設計的棧可以使用現有的棧結構

*@author nemo

* */

public

class

stackdemo

if(stackmin.isempty() || stackmin.peek() >=data)else

this.stackdata.push(data);

}public integer pop()

this.stackmin.pop();

return

this.stackdata.pop();

}public integer getmin()

return stackmin.peek();

}

實現乙個具有GetMin功能的棧

實現乙個棧,要求實現push 出棧 pop 入棧 min 返回最小值的操作 的時間複雜度為o 1 1 建立兩個棧,乙個為普通的容納資料的棧stackdata,乙個為stackmin的棧用來返回最小值 2 壓入資料時,stackdata直接壓入資料newnum stackmin若為空,直接壓入資料ne...

設計乙個帶有getMin功能的棧

題目 實現乙個特殊的棧,在實現棧的基本功能的基礎上,再實現返回棧中最小元素的操作。要求 1,pop,push,getmin操作的時間複雜度都是o 1 注 1,設計的棧型別可以使用現有的棧結構。思路 可以考慮使用兩個棧來進行設計,乙個棧用來儲存當前棧中的元素,其功能和乙個正常的棧沒有區別,這個棧記為s...

設計乙個有GetMin功能的棧

兩種資料壓入規則,也就是兩種實現的方法,利用兩個棧,乙個stackdata棧用來壓入所有的資料,所有資料都會壓入此棧,乙個satckmin用來壓入最小元素 對應的就是stackdata中的最小元素 第一種方法 壓棧規則 1 當將資料壓入棧stackdata時,判斷stackmin棧是否為空,為空則將...