package com.example.demo;
import java.util.Stack;
/**
* Created by Administrator on 17.6.1.
*/
public class MyStack {
private Stack<Integer> stackData;
private Stack<Integer> stackMin;
public MyStack() {
stackData = new Stack<Integer>();
stackMin = new Stack<Integer>();
}
public void push(int num) {
if (stackMin.isEmpty()) {
stackMin.push(num);
} else if (getMin() > num) {
stackMin.push(num);
}
stackData.push(num);
}
public int pop() {
if (this.stackData.isEmpty()) {
throw new RuntimeException("stack is empty");
}
Integer value = stackData.pop();
if (value == getMin()) {
stackMin.pop();
}
return value;
}
public int getMin() {
if (stackMin.isEmpty()) {
throw new RuntimeException("stack is empty");
}
return stackMin.peek();
}
}
設計一個具有getMin功能的棧
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
推薦閱讀更多精彩內容
- 眾貸匯:投資人如何選擇P2P平臺? 縱觀國內投資理財市場,相比較而言,P2P理財產品的年化收益率普遍較高,業內較靠...
- 小編按:這是一篇 Bugtags 用戶來稿,主要是介紹了使用 Bugtags 前后對測試及解決 Bug 所帶來的變...
- OneToOne單向 實體類 映射文件 測試add 添加成功。 上述add: 如果person有對應的卡,再次添加...