返回棧中最小元素

2021-09-26 02:55:03 字數 491 閱讀 4134

實現乙個特殊的棧,在實現棧的基本功能的基礎上,再實現返 回棧中最小元素的操作。

【要求】

pop、push、getmin操作的時間複雜度都是o(1)。

設計的棧型別可以使用現成的棧結構。

public static class stackbymin 

public void push(int newnum) else if (newnum <= this.getmin())

this.stackdata.push(newnum);

}public int pop()

int value = this.stackdata.pop();

if (value == this.getmin())

return value;

}public int getmin()

return this.stackmin.peek();

}}

返回棧中最小元素 遞迴逆序棧

設計乙個有getmin功能的棧 實現乙個特殊的棧,在實現棧的基本功能的基礎上,再實現返回棧中最小元素的操作。1 pop push getmin操作的時間複雜度都是o 1 2 設計的棧型別可以使用現成的棧結構。在設計時,我們使用兩個棧,乙個棧用來儲存當前棧中的元素,其功能和乙個正常的棧沒有區別,這個棧...

查詢棧中最小元素,時間複雜度為0

此程式實現了乙個查詢出棧中最小元素的時間複雜度為0的棧。此函式在進棧出棧的時候都進行了判斷,進棧時,若當前的元素小於之前的最小元素,則把當前元素記錄進該元素的最小元素中,並輸出更改最小元素的資訊。出棧時,若當前的最小元素小於出棧後棧中的最小元素,則輸出更改最小元素的資訊。如下 include inc...

返回列表中最後剩下的元素

1.傳入列表,和步進值 隔幾個刪除資料 2.從第乙個元素起,查到步進值就刪掉該元素 3.到結尾後,返回第乙個元素繼續累計查詢def last item lt,step from collections import deque if len lt 0 or len lt 1 return print...