這篇文章主要介紹了leetcode如何實(shí)現(xiàn)滑動(dòng)窗口,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
創(chuàng)新互聯(lián)建站主要為客戶提供服務(wù)項(xiàng)目涵蓋了網(wǎng)頁視覺設(shè)計(jì)、VI標(biāo)志設(shè)計(jì)、營銷網(wǎng)站、網(wǎng)站程序開發(fā)、HTML5響應(yīng)式成都網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站建設(shè)、微商城、網(wǎng)站托管及網(wǎng)頁維護(hù)、WEB系統(tǒng)開發(fā)、域名注冊、國內(nèi)外服務(wù)器租用、視頻、平面設(shè)計(jì)、SEO優(yōu)化排名。設(shè)計(jì)、前端、后端三個(gè)建站步驟的完善服務(wù)體系。一人跟蹤測試的建站服務(wù)標(biāo)準(zhǔn)。已經(jīng)為木屋行業(yè)客戶提供了網(wǎng)站營銷推廣服務(wù)。
滑動(dòng)窗口類題目基本上技巧在于維護(hù)一個(gè)滑動(dòng)窗口,移動(dòng)窗口的左右指針,使得窗口滿足一定條件,關(guān)鍵在于如何處理窗口滿足條件的地方,使得算法更高效。
給定一個(gè)由若干 0
和 1
組成的數(shù)組 A
,我們最多可以將 K
個(gè)值從 0 變成 1 。
返回僅包含 1 的最長(連續(xù))子數(shù)組的長度。
示例 1:
輸入:A = [1,1,1,0,0,0,1,1,1,1,0], K = 2
輸出:6
解釋:
[1,1,1,0,0,1,1,1,1,1,1]
粗體數(shù)字從 0 翻轉(zhuǎn)到 1,最長的子數(shù)組長度為 6。
示例 2:
輸入:A = [0,0,1,1,0,0,1,1,1,0,1,1,0,0,0,1,1,1,1], K = 3
輸出:10
解釋:
[0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1]
粗體數(shù)字從 0 翻轉(zhuǎn)到 1,最長的子數(shù)組長度為 10。
解題思路:
1,本題的要點(diǎn)不在滑動(dòng)窗口長度,在于,維持窗口內(nèi)0的個(gè)數(shù)<=K
2,我們定義指針l,r分別表示窗口左右下標(biāo),移動(dòng)r,當(dāng)A[r]==0的時(shí)候我們增加0的個(gè)數(shù)記錄sum,分兩種情況
A,sum>K 這個(gè)時(shí)候需要移動(dòng)左指針,讓0的個(gè)數(shù)減1
B,sum<=K 無需處理,繼續(xù)移動(dòng)右指針
func longestOnes(A []int, K int) int { if K==0 &&len(A)<1{ return 0 } l:=0 sum:=0 max:=0 for r:=0;r<len(A);r++{ if A[r]==0{ sum++ if sum>K{ for A[l]!=0{ l++ } l++ sum-- } } if r-l+1>max{ max=r-l+1 } } return max}
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“l(fā)eetcode如何實(shí)現(xiàn)滑動(dòng)窗口”這篇文章對大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!
本文標(biāo)題:leetcode如何實(shí)現(xiàn)滑動(dòng)窗口
文章鏈接:http://aaarwkj.com/article34/peiope.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、定制開發(fā)、標(biāo)簽優(yōu)化、App設(shè)計(jì)、Google、網(wǎng)站改版
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)