精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

詳解滑動窗口最值問題

開發 前端
滑動問題包含一個滑動窗口,它是一個運行在一個大數組上的子列表,該數組是一個底層元素集合。一般用來求最值問題。

[[373481]]

 滑動問題包含一個滑動窗口,它是一個運行在一個大數組上的子列表,該數組是一個底層元素集合。一般用來求最值問題。

LeetCode 第 239 題:滑動窗口最大值

題目來源于 LeetCode 上第 239 號問題:滑動窗口最大值。題目難度為 Hard 。

給定一個數組 nums,有一個大小為 k 的滑動窗口從數組的最左側移動到數組的最右側。你只可以看到在滑動窗口內的 k 個數字。滑動窗口每次只向右移動一位。

  1. 輸入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3 
  2. 輸出: [3,3,5,5,6,7]  
  3. 解釋:  
  4.  
  5.   滑動窗口的位置                最大值 
  6. ---------------                ----- 
  7. [1  3  -1] -3  5  3  6  7       3 
  8.  1 [3  -1  -3] 5  3  6  7       3 
  9.  1  3 [-1  -3  5] 3  6  7       5 
  10.  1  3  -1 [-3  5  3] 6  7       5 
  11.  1  3  -1  -3 [5  3  6] 7       6 
  12.  1  3  -1  -3  5 [3  6  7]      7 

看到這個題之后,第一直覺就是暴力解法,用兩層循環依次查詢滑動窗口的最大值,實現代碼如下。

  1. nums = [1, 3, -1, -3, 5, 3, 6, 7] 
  2. k = 3 
  3. res = [] 
  4. for i in range(k, len(nums) + 1): 
  5.     res.append(max(nums[i - k:i])) 
  6. print(res)  #[3, 3, 5, 5, 6, 7] 

但max執行效率卻很低,在Leetcode上不能通過,因此我們需要繼續找尋新的解決方案。

雙端隊列

Deque 的含義是 “double ended queue”,即雙端隊列,它具有隊列和棧的性質的數據結構。顧名思義,它是一種前端與后端都支持插入和刪除操作的隊列。

在Python中,我直接使用列表代替雙端隊列,pop(0)表示前端刪除操作,pop()表示后端刪除操作。

雙端隊列window記錄滑動窗口中元素的索引,隊列左邊界記錄當前滑動窗口中最大元素的索引

  • 當隊列非空,左邊界出界時(滑動窗口向右移導致的),更新左邊界
  • 當隊列非空,將隊列中索引對應的元素值比 num 小的移除,更新隊列
  • 當索引 i 大于 k-1,更新輸出結果
  1. class Solution: 
  2.     def maxSlidingWindow(self, nums: List[int], k: int) -> List[int]: 
  3.         if not  nums: return [] 
  4.         window ,res = [],[] 
  5.         for i,x in enumerate(nums): 
  6.             # 如果存在窗口 而且窗口的第一個數 不在這個范圍,就出去 
  7.             if i >= k and window[0] <= i-k: 
  8.                 window.pop(0) 
  9.             # 每次進入窗口的和最后一個比較,如果大了,最后一個直接刪除 
  10.             while window and nums[window[-1]] <= x: 
  11.                 window.pop() 
  12.             # 無論是不是刪除最后一個,都要加入x到窗口中 
  13.             window.append(i) 
  14.             # 如果出了窗口,就把窗口的頭加入到res中 
  15.             if i >= k-1: 
  16.                 res.append(nums[window[0]]) 
  17.         return res 

LeetCode 第 3 題 無重復字符的最長子串

給定一個字符串,請你找出其中不含有重復字符的 最長子串 的長度。

  1. # 示例 1: 
  2. # 輸入: "abcabcbb" 
  3. # 輸出: 3 
  4. #解釋: 因為無重復字符的最長子串是 "abc",所以其長度為 3。 
  5. # 示例 2: 
  6. # 輸入: "bbbbb" 
  7. #輸出: 1 
  8. #解釋: 因為無重復字符的最長子串是 "b",所以其長度為 1。 
  9. # 示例 3 
  10. # 輸入: "pwwkew" 
  11. #輸出: 3 
  12. #解釋: 因為無重復字符的最長子串是 "wke",所以其長度為 3。 
  13. #請注意,你的答案必須是 子串 的長度,"pwke" 是一個子序列,不是子串。 

下面我們看看,“滑動窗口”如何進行字符串處理。結合題目中的例子“abcabcbb”這個字符串,我們來看看如何找它的無重復最長子串。

首先,我們定義窗口的兩端:begin和end,分別表示要找的子串的開頭和結尾。


開始的時候,begin和end都指向0的位置即‘a’,然后end不斷后移(窗口變寬),當遇到第二個‘a’時(遇見重復字符)就得到一個子串,其長度就是end和begin位置的差。

如何判斷是否遇到了重復字符‘a’呢?需要一個字典作為輔助數據結構,把end從頭開始遇到的每個字符及其索引位置都放到字典里面,end每次移動到新字符就查一下字典即可

  1. class Solution: 
  2.     def lengthOfLongestSubstring(self, s: str) -> int
  3.         # 定義兩個變量res和start,res用于存儲最長子字符串的長度,start存儲無重復子串左邊的起始位置。 
  4.         ''
  5.         然后創建一個哈希表,遍歷整個字符串,如果字符串沒有在哈希表中出現,說明沒有遇到過該字符,則此時計算最長無重復子串,當哈希表中的值小于left,說明left位置更新了,需要重新計算最長無重復子串。每次在哈希表中將當前字符串對應的賦值加1。 
  6.         :param s: 
  7.         :return
  8.         ''
  9.         d, res, start = {}, 0, 0 
  10.         for i, ch in enumerate(s): 
  11.             if ch in d: 
  12.                 start = max(start, d[ch] + 1) 
  13.             res = max(res, i - start + 1) 
  14.             d[ch] = i 
  15.         return res 

人生最重要的不是所站的位置,而是內心所朝的方向。只要我在每篇博文中寫得自己體會,修煉身心;在每天的不斷重復學習中,耐住寂寞,練就真功,不畏艱難,奮勇前行,不忘初心,砥礪前行,人生定會有所收獲,不留遺憾 (作者:Runsen )

本文已收錄 GitHub  https://github.com/MaoliRUNsen/runsenlearnpy100

 

責任編輯:姜華 來源: Python之王
相關推薦

2021-08-25 09:49:48

鴻蒙HarmonyOS應用

2012-08-29 09:32:10

大數據存儲Hadoop

2023-08-11 07:44:40

TCP滑動窗口數據

2021-11-12 09:30:46

滑動窗口算法

2023-08-26 20:56:02

滑動窗口協議

2023-05-15 07:32:01

算法訓練滑動窗口

2021-10-14 08:19:50

雙指針滑動窗口算法

2009-11-26 14:23:11

Silverlight

2011-08-17 14:30:34

iOS開發窗口

2015-01-15 09:21:24

TCP窗口

2013-11-18 10:04:31

TCP 滑動窗口

2024-08-02 15:47:28

數據庫分庫分表

2015-05-25 11:10:49

2023-09-13 08:37:56

程序員面試catch

2011-08-01 15:58:23

惠普激光打印機

2009-07-06 10:00:31

JSP頁面傳值

2023-07-03 08:20:35

MySQL窗口函數

2020-08-13 08:43:24

TCP固定窗口滑動窗口

2020-08-12 13:18:49

Java編程語言

2021-02-02 14:41:11

NumPy開發程序
點贊
收藏

51CTO技術棧公眾號

99精品国产一区二区三区2021| 一本一道波多野毛片中文在线| 国自产拍偷拍福利精品免费一 | 99在线热播精品免费| 97超级碰碰人国产在线观看| 一级肉体全黄裸片| 久久久91麻豆精品国产一区| 欧美日韩国产一中文字不卡| 亚洲欧美在线网| 天堂网在线资源| 蜜桃传媒麻豆第一区在线观看| 欧美激情一区二区三区高清视频| 免费看黄色的视频| 国产美女撒尿一区二区| 欧美天堂亚洲电影院在线播放| 欧美乱做爰xxxⅹ久久久| 九色在线视频蝌蚪| 成人av在线影院| 91视频8mav| 黄色av一区二区| 亚洲激情影院| 欧美成人h版在线观看| 国产女主播喷水高潮网红在线| 国产一区二区高清在线| 91福利在线观看| 国产3p露脸普通话对白| h网站久久久| 亚洲国产精品国自产拍av| 国产一级特黄a大片99| 国产精品女同一区二区| 日韩影院免费视频| 欧美亚洲国产另类| 久久久久久久国产精品毛片| 99热精品久久| 中文字幕在线观看亚洲| 97超碰在线资源| 日本精品影院| 日韩精品久久久久| 中文视频在线观看| 91蝌蚪精品视频| 日韩一区二区三区av| 成人综合久久网| 经典三级一区二区| 色欧美88888久久久久久影院| 缅甸午夜性猛交xxxx| 在线不卡日本v二区707| 亚洲免费资源在线播放| 青青草原国产免费| 免费观看在线黄色网| 国产目拍亚洲精品99久久精品| 欧美成熟毛茸茸复古| 污视频在线免费| 91在线视频免费91| 久久久com| 日本韩国一区| 国产亚洲自拍一区| 日韩国产伦理| 色三级在线观看| 一区在线观看视频| 精品国产一区二区三区在线| 国产美女av在线| 亚洲最大色网站| 国产av人人夜夜澡人人爽麻豆 | 成人黄色小视频| 尤物tv国产一区| 亚洲女人久久久| 欧美jjzz| 69久久夜色精品国产7777| 特黄视频免费看| 日本中文字幕不卡| 91久久久久久久久久久久久| av观看在线免费| 国产91富婆露脸刺激对白| 国语精品中文字幕| 国产日本在线观看| 亚洲人成网站精品片在线观看| ijzzijzzij亚洲大全| 精精国产xxxx视频在线中文版 | 国产欧美日韩中文久久| 亚洲一区二区三区乱码| 超碰在线免费公开| 午夜伦理一区二区| 波多野结衣作品集| 精品亚洲二区| 亚洲高清福利视频| 五月婷六月丁香| 你懂的国产精品| 欧美整片在线观看| 国产精品福利电影| 99视频有精品| 在线看无码的免费网站| 24小时免费看片在线观看| 在线免费观看视频一区| 国产农村妇女精品久久| 麻豆一区二区| 久热精品视频在线观看一区| 中文字幕在线观看免费视频| 日韩av一二三| 国产一区再线| 九色porny丨首页在线| 激情懂色av一区av二区av| 亚洲一级免费在线观看| 欧美wwwsss9999| 久久天堂电影网| 国产精品久久久久久久久久精爆| 国产在线麻豆精品观看| 久久久亚洲综合网站| 在线观看av免费| 欧美三区免费完整视频在线观看| 黑森林av导航| 亚洲xxx拳头交| 日韩av不卡电影| 亚洲精品国偷拍自产在线观看蜜桃| 国产清纯美女被跳蛋高潮一区二区久久w| 99久re热视频精品98| 经典三级一区二区| 亚洲免费电影在线观看| 久久网中文字幕| 国内精品久久久久影院色| 日本婷婷久久久久久久久一区二区| 欧美日韩经典丝袜| 91精品在线观看入口| 国产综合精品在线| 免费精品视频| 国产中文一区二区| 人妖欧美1区| 日韩亚洲欧美中文三级| 来吧亚洲综合网| 免费成人在线视频观看| 欧美一区激情视频在线观看| 国模私拍一区二区国模曼安| 337p日本欧洲亚洲大胆色噜噜| 国产成人av免费在线观看| 久久亚洲二区| 欧美日韩一区二 | 亚洲成人自拍一区| 亚洲 自拍 另类 欧美 丝袜| 99久久久久国产精品| 国产精品中文字幕在线观看| 岛国视频免费在线观看| 一本高清dvd不卡在线观看| 久久福利小视频| 99精品久久久| 久久久99爱| 美女福利一区二区| 亚洲精品中文字幕av| 国产99久久久| 久久久久久99久久久精品网站| 91视频 -- 69xx| 日韩电影不卡一区| 日本精品免费观看| 国产三级视频在线看| 日本乱人伦一区| 波多野结衣一二三四区| 奇米色一区二区三区四区| 亚洲国产精品久久久久婷婷老年| 欧美在线va视频| 日韩亚洲欧美成人| 国产美女无遮挡永久免费| 一区二区三区色| 妖精视频一区二区| 亚洲一区二区三区高清| 日韩精品久久久免费观看| 素人一区二区三区| 美女久久久久久久| 天堂网在线播放| 在线观看亚洲a| 国产性生活大片| 国产999精品久久| 18禁免费无码无遮挡不卡网站| 国产精品欧美三级在线观看| 国产精品自产拍在线观看| av黄在线观看| 日韩精品视频在线| 亚洲图片视频小说| 夜夜嗨av一区二区三区网页| 国产精品无码一区二区三区免费| 久久久亚洲人| 综合一区中文字幕| 国产精品x8x8一区二区| 国产精品爱久久久久久久| 蜜桃av在线免费观看| 亚洲成人亚洲激情| 中文字幕在线观看你懂的| 亚洲精品高清在线| 最近中文字幕在线mv视频在线| 久久精品久久综合| 成人免费aaa| 久久亚洲国产| 久草精品电影| av在线亚洲一区| 欧美自拍视频在线观看| 久久日韩视频| 亚洲欧美国产一区二区三区| 国产精品主播一区二区| 欧美性色视频在线| 欧美日韩在线观看成人| 国产亚洲婷婷免费| 国产艳妇疯狂做爰视频| 青青草伊人久久| 亚洲人精品午夜射精日韩| 久久久久久久久久久9不雅视频| 国产专区一区二区三区| 国产95亚洲| 国产精品69久久| 欧美大胆a人体大胆做受| 日韩在线观看免费高清完整版| 污污的视频网站在线观看| 欧美一区二区在线不卡| wwwwww在线观看| 激情av一区二区| 精品视频一区二区在线观看| 国产精品久久久久久久浪潮网站| 屁屁影院国产第一页| 国产综合久久久久久久久久久久| 日本xxxxxxx免费视频| 亚洲夜间福利| 国产精品一二三在线观看| 久久国产小视频| 日本一区二区三区视频在线播放| a级日韩大片| 亚洲在线视频观看| 欧美成人一二区| 日本伊人精品一区二区三区介绍| 操喷在线视频| 欧美夫妻性生活视频| 国产三区视频在线观看| 日韩在线视频免费观看高清中文| 黄色大片在线免费观看| 亚洲精品成人久久| 欧美一级在线免费观看| 日韩欧美一区二区在线视频| 国产美女三级无套内谢| 欧美疯狂做受xxxx富婆| 亚洲永久精品视频| 欧美日韩亚洲不卡| 这里只有精品999| 欧美亚洲自拍偷拍| 亚洲天堂视频在线播放| 欧美午夜精品久久久久久孕妇| 手机看片久久久| 色偷偷成人一区二区三区91| 国产www在线| 91国在线观看| 中文天堂在线资源| 欧美性欧美巨大黑白大战| 波多野结衣家庭主妇| 欧美在线免费播放| 中文字幕免费播放| 欧美蜜桃一区二区三区| 911美女片黄在线观看游戏| 欧美精品免费视频| 99热这里只有精| 欧美xxxxxxxx| 深夜福利在线视频| 亚洲欧美三级在线| 在线观看av的网站| 伦伦影院午夜日韩欧美限制| 性xxxfreexxxx性欧美| 高清欧美性猛交| 色资源二区在线视频| 国产91精品网站| 日本免费成人| 97人人澡人人爽| 色婷婷综合久久久久久| 色99中文字幕| 91精品国产91久久久久久密臀| 成人在线免费高清视频| 一本不卡影院| 免费看污污网站| 国产精品一区二区视频| 中文字幕第3页| 国产欧美一区二区三区沐欲| 午夜爱爱毛片xxxx视频免费看| 一区二区成人在线视频| av黄色在线看| 欧美久久久久中文字幕| 男人天堂手机在线观看| 国产亚洲a∨片在线观看| 欧洲日本在线| 高清欧美性猛交xxxx黑人猛交| 久九九久频精品短视频| 91精品在线一区| 欧美三级午夜理伦三级小说| 亚洲国产精品123| 激情综合亚洲| 欧美大尺度做爰床戏| 国产成人av电影在线| 成人在线一级片| 亚洲色图视频网| 欧美a∨亚洲欧美亚洲| 欧美精品高清视频| 偷拍25位美女撒尿视频在线观看| 日日摸夜夜添一区| 深夜在线视频| 91丨九色丨国产| av在线不卡顿| 黄色大片中文字幕| 久久精品国产精品亚洲红杏| 日本一区二区在线免费观看| 国产精品白丝在线| 综合网在线观看| 精品日产卡一卡二卡麻豆| eeuss影院在线播放| 97视频在线观看网址| 国模大尺度视频一区二区| 免费看成人午夜电影| 欧美先锋影音| 国产又黄又猛的视频| 久久―日本道色综合久久| 激情五月婷婷小说| 欧美日韩国产免费一区二区| 日本又骚又刺激的视频在线观看| 欧美另类极品videosbestfree| 91精品xxx在线观看| 精品日产一区2区三区黄免费| 亚洲v在线看| 五月激情婷婷在线| 视频一区在线免费观看| 成人毛片一区二区三区| 91精品国产91久久久久久一区二区 | 网站在线你懂的| 国产亚洲欧洲997久久综合| 日韩 欧美 亚洲| 精品乱人伦一区二区三区| 影音先锋男人资源在线| 91精品中文在线| 91精品综合久久久久久久久久久| 一区二区在线播放视频| 久久一区二区三区国产精品| 中文字幕在线字幕中文| 精品国产一区二区三区四区四 | 麻豆传媒在线看| 1000精品久久久久久久久| 在线播放国产一区| 日韩亚洲第一页| 欧美亚洲黄色| 亚洲午夜精品一区二区| 蜜桃在线一区二区三区| 国产三级短视频| 欧美日韩精品欧美日韩精品 | 综合亚洲自拍| 欧美成人黑人猛交| 国产人成亚洲第一网站在线播放| 无码人妻一区二区三区线| 亚洲色图35p| 午夜无码国产理论在线| 婷婷久久青草热一区二区| 日韩福利电影在线观看| 一二三四国产精品| 欧美日韩久久不卡| 爆操欧美美女| 国产精品国产三级欧美二区| 91久久亚洲| 日本黄色特级片| 欧美伊人精品成人久久综合97| 午夜视频在线看| 91视频婷婷| 亚洲麻豆av| 色婷婷av777| 欧美日韩午夜影院| 最新av在线播放| 国内精品二区| 日本中文一区二区三区| 视频国产一区二区| 精品盗摄一区二区三区| 美女高潮在线观看| 台湾成人av| 国产成人精品影院| 四虎精品永久在线| 中文字幕亚洲欧美日韩高清| 欧美日韩中出| 国产欧美在线一区| 国产精品久久久久影视| www.天堂av.com| 欧洲永久精品大片ww免费漫画| 成人网18免费网站| 日韩大尺度视频| 日本久久电影网| 四虎影视成人| 欧美日韩中文国产一区发布| 韩国理伦片一区二区三区在线播放 | 精品盗摄女厕tp美女嘘嘘| 亚洲精品免费一区亚洲精品免费精品一区 | 劲爆欧美第一页| 亚洲欧美综合区自拍另类| 国产一区二区三区黄网站| 久久综合九色综合88i| 国产精品丝袜久久久久久app| 亚洲国产精品国自产拍久久| 国产99久久久欧美黑人| 午夜精品视频| 色欲AV无码精品一区二区久久| 日韩欧美一区电影| 欧美aaa视频| 欧美国产综合在线| 国产精品看片你懂得| 色欲av伊人久久大香线蕉影院| 国产美女精品视频免费观看| 99伊人成综合|