銆愬墤鎸噊ffer銆戙€愭爤銆?0.鍖呭惈min鍑芥暟鐨勬爤
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了銆愬墤鎸噊ffer銆戙€愭爤銆?0.鍖呭惈min鍑芥暟鐨勬爤相关的知识,希望对你有一定的参考价值。
鏍囩锛?a href='http://www.mamicode.com/so/1/called' title='called'>called == return int struct call 鍖呭惈min鍑芥暟鐨勬爤 oid str
鍖呭惈min鍑芥暟鐨勬爤
缁存姢涓や釜鏍堬細鏍坰t瀛樺偍鎵€鏈夊厓绱?minSt鏄竴涓崟璋冩爤锛屾爤椤跺厓绱犱负min
1. 鍏ユ爤锛歴t.push(x); 鑻inSt.top >= x鎴杕inSt涓虹┖锛寈鍏ユ爤minSt
2. 鍑烘爤锛氳嫢minSt涓巗t鏍堥《鍏冪礌鐩稿悓锛屽垯浜岃€呴兘鍑烘爤锛屽惁鍒檚t鍑烘爤
3. 鑾峰彇鏈€灏忓€硷細鑻inSt涓嶄负绌猴紝杩斿洖minSt鏍堥《鍏冪礌
class MinStack {
public:
stack<int> st;
stack<int> minSt;
/** initialize your data structure here. */
MinStack() {
}
void push(int x) {
st.push(x);
if(minSt.empty() || minSt.top() >= x) minSt.push(x);
}
void pop() {
if(minSt.top() == st.top()) minSt.pop();
if(!st.empty()) st.pop();
}
int top() {
if(!st.empty()) return st.top();
else return -1;
}
int getMin() {
if(!minSt.empty()) return minSt.top();
else return -1;
}
};
/**
* Your MinStack object will be instantiated and called as such:
* MinStack obj = new MinStack();
* obj.push(x);
* obj.pop();
* int param_3 = obj.top();
* int param_4 = obj.getMin();
*/
以上是关于銆愬墤鎸噊ffer銆戙€愭爤銆?0.鍖呭惈min鍑芥暟鐨勬爤的主要内容,如果未能解决你的问题,请参考以下文章