老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)

LeetCode如何解決重塑矩陣問(wèn)題

這篇文章給大家分享的是有關(guān)LeetCode如何解決重塑矩陣問(wèn)題的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供雞西梨樹(shù)網(wǎng)站建設(shè)、雞西梨樹(shù)做網(wǎng)站、雞西梨樹(shù)網(wǎng)站設(shè)計(jì)、雞西梨樹(shù)網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、雞西梨樹(shù)企業(yè)網(wǎng)站模板建站服務(wù),10余年雞西梨樹(shù)做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

題目描述:

在僅包含 0 和 1 的數(shù)組 A 中,一次 K 位翻轉(zhuǎn)包括選擇一個(gè)長(zhǎng)度為 K 的(連續(xù))子數(shù)組,同時(shí)將子數(shù)組中的每個(gè) 0 更改為 1,而每個(gè) 1 更改為 0。

返回所需的 K 位翻轉(zhuǎn)的最小次數(shù),以便數(shù)組沒(méi)有值為 0 的元素。如果不可能,返回 -1。

 

示例 1:

輸入:A = [0,1,0], K = 1
輸出:2
解釋:先翻轉(zhuǎn) A[0],然后翻轉(zhuǎn) A[2]。

 

示例 2:

輸入:A = [1,1,0], K = 2
輸出:-1
解釋:無(wú)論我們?cè)鯓臃D(zhuǎn)大小為 2 的子數(shù)組,我們都不能使數(shù)組變?yōu)?[1,1,1]。

 

示例 3:

輸入:A = [0,0,0,1,0,1,1,0], K = 3
輸出:3
解釋:
翻轉(zhuǎn) A[0],A[1],A[2]: A變成 [1,1,1,1,0,1,1,0]
翻轉(zhuǎn) A[4],A[5],A[6]: A變成 [1,1,1,1,1,0,0,0]
翻轉(zhuǎn) A[5],A[6],A[7]: A變成 [1,1,1,1,1,1,1,1]

 

思路分析:

題目大意:每次翻轉(zhuǎn)長(zhǎng)度為 K 的子數(shù)組,求最少的翻轉(zhuǎn)次數(shù)使數(shù)組中所有的 0 都更改為 1。如果不能實(shí)現(xiàn),則返回 -1.

  • 結(jié)論 1:后面區(qū)間的翻轉(zhuǎn),不會(huì)影響前面的元素。因此可以使用貪心策略,從左到右遍歷,遇到每個(gè) 0 都把它和后面的 K 個(gè)數(shù)進(jìn)行翻轉(zhuǎn)。
  • 結(jié)論 2:A[i] 翻轉(zhuǎn)偶數(shù)次的結(jié)果是 A[i];翻轉(zhuǎn)奇數(shù)次的結(jié)果是 A[i] ^ 1。

上面方法超時(shí)的主要原因是我們真實(shí)地進(jìn)行了翻轉(zhuǎn)。根據(jù)結(jié)論二,位置 i 現(xiàn)在的狀態(tài),和它被前面 K - 1個(gè)元素翻轉(zhuǎn)的次數(shù)(奇偶性)有關(guān)。

我們使用隊(duì)列模擬滑動(dòng)窗口,該滑動(dòng)窗口的含義是前面 K - 1個(gè)元素中,以哪些位置起始的 子區(qū)間進(jìn)行了翻轉(zhuǎn)。該滑動(dòng)窗口從左向右滑動(dòng),如果當(dāng)前位置 i 需要翻轉(zhuǎn),則把該位置存儲(chǔ)到隊(duì)列中。遍歷到新位置 j (j < i + K)時(shí),隊(duì)列中元素的個(gè)數(shù)代表了 i被前面 K - 1個(gè)元素翻轉(zhuǎn)的次數(shù)。

當(dāng) i 位置被翻轉(zhuǎn)了偶數(shù)次,如果 A[i]為 0,那么翻轉(zhuǎn)后仍是 0,當(dāng)前元素需要翻轉(zhuǎn);
當(dāng) i 位置被翻轉(zhuǎn)了奇數(shù)次,如果 A[i]為 1,那么翻轉(zhuǎn)后是 0,當(dāng)前元素需要翻轉(zhuǎn)。
綜合上面兩點(diǎn),我們得到一個(gè)結(jié)論,如果 len(que) % 2 == A[i] 時(shí),當(dāng)前元素需要翻轉(zhuǎn)。

當(dāng) i + K > N 時(shí),說(shuō)明需要翻轉(zhuǎn)大小為 K 的子區(qū)間,但是后面剩余的元素不到 K 個(gè)了,所以返回 -1。

 

Python實(shí)現(xiàn)

class Solution(object):
    def minKBitFlips(self, A, K):
        """
        :type A: List[int]
        :type K: int
        :rtype: int
        """
        N = len(A)
        que = collections.deque()
        res = 0
        for i in range(N):
            if que and i >= que[0] + K:
                que.popleft()
            if len(que) % 2 == A[i]:
                if i +  K > N: return -1
                que.append(i)
                res += 1
        return res

作者:fuxuemingzhu
鏈接:https://leetcode-cn.com/problems/minimum-number-of-k-consecutive-bit-flips/solution/hua-dong-chuang-kou-shi-ben-ti-zui-rong-z403l/
來(lái)源:力扣(LeetCode)
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
   

java實(shí)現(xiàn)

class Solution {
    public int minKBitFlips(int[] A, int K) {
        int len=A.length;
        int res=0;
        Deque deque=new LinkedList<>();
        for(int i=0;i            if(deque.size()>0 && i>deque.peek()+K-1){
                deque.removeFirst();
            }
            if(deque.size()%2==A[i]){
                if(i+K>len){
                    return -1;
                }
                deque.add(i);
                res=res+1;
            }
        }
        return res;
    }
}

感謝各位的閱讀!關(guān)于“LeetCode如何解決重塑矩陣問(wèn)題”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!


本文名稱:LeetCode如何解決重塑矩陣問(wèn)題
URL分享:http://www.xueling.net.cn/article/gccdep.html

其他資訊

在線咨詢
服務(wù)熱線
服務(wù)熱線:028-86922220
TOP
主站蜘蛛池模板: 国产激情久久久久影院老熟女免费 | 天天插av| 日韩一二区在线观看 | 人妻人人澡人人添人人爽人人玩 | 无码精品人妻一区二区三区共妻 | 国产V精品V欧美V日韩V | 国产精品高清一区二区三区 | 黄色网av | 八戒八戒神马影院在线4 | 精品久久久久久国产牛牛 | 亚洲国产良家在线观看 | 性开放少妇xxxxⅹ视频蜜桃 | www.拔插 | 91人妻人人澡人人爽人人精品 | 国产成人久久AV一区二区 | 亚洲的天堂AV无码 | 正在播放91视频 | 九九精品视频免费 | av中文在线天堂 | 香蕉啪视频在线观看视频久 | 中文日产幕无线码一区tr | 少妇久久久久久人妻无码 | 邻居少妇张开腿让我爽了一夜 | 91老司机在线视频 | 性欧美videofree高清69 | 91精品啪在线观看国产日本 | 欧美v国产v亚洲v日韩九九 | 五月天色区 | 亚洲国产欧美在线人成aaaa20 | 国产精品v欧美精品 | 一本一本久久a久久精品综合麻豆 | 日韩精品无码专区免费视频 | 最新国产一区最新在线 | 一区二区三区中文在线 | 国产资源视频 | XXXX漂亮少妇XXXXHD | 中文字幕一线产区和二线 | 黄色片免费看. | 午夜亚洲国产理论片亚洲2020 | 亚洲欧美日韩综合久久久久久 | 无码国产玉足脚交久久2024 |