包含min函數的棧
題目描述:
定義棧的數據結構,請在該類型中實現一個能夠得到棧中所含最小元素的min函數(時間複雜度應爲O(1))。
注意:保證測試中不會當棧爲空的時候,對棧調用pop()或者min()或者top()方法。
問題分析:
js裏面的棧,大多數時候都和數組脫不了關係,在python裏,棧也可以由列表來實現
用一個新的數組,完成添加,刪除,自然不是什麼難事,主要是要想到用數組來解決
代碼展示:
var stack = [];//數組
function push(node)
{
stack.push(node);//添加
}
function pop()
{
stack.pop();//彈出
}
function top()
{
// write code here
return stack.pop();//返回彈出
}
function min()
{
// 找出數組最小的進行輸出
var minNum = stack[0];
for(let i=0;i<stack.length;i++){
if(stack[i]<minNum){
minNum = stack[i];
}
}
return minNum;
}