2020.02.23日常總結兼單調棧略講

調\color{green}{單調棧}

  • 顧名思義,單調棧就是內部元素單調(遞增、遞減、不增、不減都叫單調)的棧。
  • 常常用來完成找離一個數最近且大於、小於、大於等於、小於等於它的數。
  • 效率極高,常常是 O(N)O(N) 的,而且它非常像一個不能刪除的單調隊列。
  • 實現上,我們就用一個棧就可以實現了,只是要維護它內部元素的單調性即可。
  • 何時需要維護?刪除不需要,查詢不需要,\color{red}{只有加入元素需要}

P5788   調\color{green}{洛谷\text{P5788}\ \ \ 【模板】單調棧}

\color{blue}{【題意】:}
在這裏插入圖片描述
\color{blue}{【思路】:} 單調棧的模板題。用一個內部元素嚴格遞增的棧 SS 維護。當我們處理到一個元素 aia_i 時,我們把 SS 的頂部 ai\leq a_i 的元素全部刪除。f(i)f(i) 就是刪除後 SS 的棧頂的元素的下標。注意必須從小到大枚舉。

\color{blue}{【代碼】:}
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章