一: 单调栈:
所谓单调栈就是满足单调性的栈结构(在栈里面的元素要么是单调递增的,要么是单调递减的);
例如 栈中元素:1,2 3,9,10,我们要将7插入到栈中,形成单调栈,那我们就需要把比7小的元素都弹(pop)出来,在把7推进去(push);
伪代码 :
插入 下;
while(!st.empty()&&st.top()<x) st.pop();
st.push(x);
单调栈应用题
上面这题有利于加深我们对单调栈的理解.
一: 单调栈:
所谓单调栈就是满足单调性的栈结构(在栈里面的元素要么是单调递增的,要么是单调递减的);
例如 栈中元素:1,2 3,9,10,我们要将7插入到栈中,形成单调栈,那我们就需要把比7小的元素都弹(pop)出来,在把7推进去(push);
伪代码 :
插入 下;
while(!st.empty()&&st.top()<x) st.pop();
st.push(x);
单调栈应用题
上面这题有利于加深我们对单调栈的理解.