日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一套模板通吃单调栈

發布時間:2025/3/19 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一套模板通吃单调栈 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

單調棧

  • 下一個更大元素的位置(下標)
  • 下一個更小元素的位置(下標)
  • 前一個更大元素的位置(下標)
  • 前一個更小元素的位置(下標)
  • 總結

單調棧就是從數組中找到左右兩邊比你大的數或者比你小的數而且時間復雜度為O(N)
單調棧與單調隊列的唯一區別就是單調棧沒有頭刪操作(過期)
單調棧與單調隊列性質類似通俗的說就是具有單調性的棧,其中單調性可以單調遞增也可以單調遞減,并且,隊尾可以進行出隊操作,隊尾可以進行入隊操作。
單調遞增棧就是從棧底到棧頂是從小到大
單調遞減棧就是從棧底到棧頂是從大到小

單調隊列:擅長維護區間最大/最小值,最小值對應著遞增隊列,最大值對應著遞減隊列
單調棧::擅長維護最近大于/小于關系,從左側先入棧就是維護左側最近關系,從右側先入棧就是維護右側最近關系

下一個更大元素的位置(下標)

int ans[n+10]; stack<int>s;for (int i = n; i >= 1; --i){while (!s.empty() && a[s.top()] <= a[i])s.pop();ans[i] = s.empty() ? 0 : s.top();s.push(i);}

下一個更小元素的位置(下標)

int ans[n+10]; stack<int>s;for (int i = n; i >= 1; --i){while (!s.empty() && a[s.top()] >= a[i])s.pop();ans[i] = s.empty() ? 0 : s.top();s.push(i);}

前一個更大元素的位置(下標)

int ans[n+10]; stack<int>s;for (int i = 1; i <= n; ++i){while (!s.empty() && a[s.top()] <= a[i])s.pop();ans[i] = s.empty() ? 0 : s.top();s.push(i);}

前一個更小元素的位置(下標)

int ans[n+10]; stack<int>s;for (int i = 1; i <= n; ++i){while (!s.empty() && a[s.top()] >= a[i])s.pop();ans[i] = s.empty() ? 0 : s.top();s.push(i);}

總結

  • 后一個就從后往前遍歷,前一個就從前往后遍歷
  • 下一個更大,就要確保棧頂的元素大于當前元素,否則彈出
  • 下一個更小,就要確保棧頂的元素小于當前元素,否則彈出
  • 如果是小于等于啥辦?,其實只要被while判斷里把等號去掉就好了。
  • 如果找后最大,前最小,即后一個比前一個大,那么維護的就是遞減的一個隊列,反之遞增。

總結

以上是生活随笔為你收集整理的一套模板通吃单调栈的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 四虎国产 | 国产综合免费视频 | 久草视频精品 | 日韩精品电影 | 北条麻妃久久精品 | 日本欧美国产在线 | 五月天国产在线 | 陪读偷伦初尝小说 | 成年人网站黄色 | 国产精品原创 | 1024毛片| 亚洲人成高清 | h狠狠躁死你h高h | 色97色| 色老板精品凹凸在线视频观看 | 亚洲熟妇av一区二区三区 | 久久精品日韩 | 国产成年无码久久久久毛片 | 欧美成人aaaaⅴ片在线看 | 国产国语亲子伦亲子 | 亚洲精品日韩在线观看 | 蜜桃色一区二区三区 | 中文字幕亚洲一区二区三区 | 波多野结衣一二三区 | 日韩丰满少妇 | 男女日皮视频 | youjizzxxx69 | av小说在线观看 | 38激情| 一区三区在线 | 欧美亚洲精品在线 | 久在线观看| 国产精品成熟老女人 | 久久久久久久久久久91 | 亚洲性少妇 | 性少妇bbw张开 | 国产乱仑视频 | 天天弄天天操 | 国产欧美一级 | 涩涩视频免费观看 | 日韩性大片| 亚洲午夜久久久久久久久 | xxxxxhd亚洲人hd | 91九色蝌蚪porny | 亚洲激情视频在线播放 | 男人操女人视频网站 | 亚洲免费观看在线 | 看黄免费网站 | 97精品视频在线观看 | 午夜在线小视频 | 亚洲天堂一| 亚洲自拍小视频 | 国产人成无码视频在线观看 | 怡红院一区二区 | 性――交――性――乱睡觉 | 一本色道久久综合熟妇 | 亚洲国产精品无码久久 | 91无套直看片红桃 | 探花国产在线 | 天天澡天天狠天天天做 | 99热一区二区三区 | 国产精品欧美精品 | 91成年人视频 | 日韩亚洲精品在线 | 奇米影视在线 | 天堂在线国产 | 日日操网 | 91精品国产综合久久久蜜臀 | 成人毛片一区二区三区 | av大全免费| 久久9热 | 人人干视频| a天堂亚洲 | 狼人狠狠干| 黑人巨大精品欧美一区二区蜜桃 | 久草视频这里只有精品 | 欧美日韩国产伦理 | 97激情| 日本在线高清 | 欧美综合自拍亚洲综合图片区 | 99极品视频 | 国产精品美女自拍视频 | 亚洲国产免费视频 | 免费观看在线播放 | 性欧美视频在线观看 | 请用你的手指扰乱我吧 | 欧美干 | 影音先锋男人资源网站 | 操碰在线观看 | 杂技xxx裸体xxxx欧美 | 欧美视频a | 午夜一二三区 | 亚洲免费影视 | 日日夜夜爱爱 | 熟妇人妻va精品中文字幕 | 女王脚交玉足榨精调教 | 求免费黄色网址 | 男人的天堂网av | 中文字幕一区二区在线视频 |