單調(diào)棧:
通常是一維數(shù)組,要尋找任一個(gè)元素的右邊或者左邊第一個(gè)比自己大或者小的元素的位置,此時(shí)我們就要想到可以用單調(diào)棧了。
739. 每日溫度
題目鏈接:739. 每日溫度
- 3種情況討論,比棧頂大,比棧頂小或者等于
496. 下一個(gè)更大元素 I
題目鏈接:496. 下一個(gè)更大元素 I
遞增棧是從棧頭到棧底遞增
這里需要2中元素在1中的映射
<pre class="md-fences md-end-block md-fences-with-lineno ty-contain-cm modeLoaded" spellcheck="false" lang="c++" cid="n64" mdtype="fences" style="box-sizing: border-box; overflow: visible; font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; margin-top: 0px; margin-bottom: 20px; font-size: 0.9rem; display: block; break-inside: avoid; text-align: left; white-space: normal; background-color: rgb(51, 51, 51); position: relative !important; padding: 10px 10px 10px 0px; width: inherit;"> while(!st.empty() && st.top() < nums2[i]){
if (umap.count(st.top()) > 0) { // 需要這個(gè)判斷否則2中出現(xiàn)了1中沒(méi)有的數(shù)會(huì)出問(wèn)題
res[umap[st.top()]] = nums2[i];
}
st.pop();
}</pre>