国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

leetcode-2645 構(gòu)造有效字符串的最小插入數(shù)

這篇具有很好參考價(jià)值的文章主要介紹了leetcode-2645 構(gòu)造有效字符串的最小插入數(shù)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

題目鏈接

2645. 構(gòu)造有效字符串的最少插入數(shù) - 力扣(LeetCode)

解題思路 動(dòng)態(tài)規(guī)劃

1、定義狀態(tài)d[i]為將前i個(gè)字符(為了方便編碼,下標(biāo)從1開始)拼湊成若干個(gè)abc所需要的最小插入數(shù)。那么初始狀態(tài)d[0]=0,最終要求解d[n],其中n為word的長(zhǎng)度。

2、轉(zhuǎn)移過程

1、d[i] = d[i-1] + 2 當(dāng)word[i]單獨(dú)存在于一組abc中
2、d[i] = d[i-1] - 1 當(dāng)word[i] > word[i-1],那么word[i]與word[i-1]存在同一組abc中

3、因?yàn)槊總€(gè)字符都盡可能與前面字符組合所以情況2優(yōu)于情況1文章來源地址http://www.zghlxwxcb.cn/news/detail-786921.html

代碼

class Solution:
    def addMinimum(self, word: str) -> int:
        n = len(word)
        d = [0] * (n + 1)
        for i in range(1,n+1):
            d[i] = d[i - 1] + 2
            if i > 1 and word[i-1] > word[i - 2]:
                d[i] = d[i -1] - 1
        return d[n]
            

到了這里,關(guān)于leetcode-2645 構(gòu)造有效字符串的最小插入數(shù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 2645. 構(gòu)造有效字符串的最少插入數(shù)

    給你一個(gè)字符串? word ?,你可以向其中任何位置插入 \\\"a\\\"、\\\"b\\\" 或 \\\"c\\\" 任意次,返回使? word ? 有效 ?需要插入的最少字母數(shù)。 如果字符串可以由 \\\"abc\\\" 串聯(lián)多次得到,則認(rèn)為該字符串? 有效 ?。 示例 1: 示例 2: 示例 3: 提示: 1 = word.length = 50 word ?僅由字母 \\\"a\\\"、\\\"b\\\" 和 \\\"c\\\" 組成

    2024年01月20日
    瀏覽(18)
  • 【LeetCode題解】2645. 構(gòu)造有效字符串的最少插入數(shù)(計(jì)算組數(shù)+動(dòng)態(tài)規(guī)劃+考慮相鄰字母)+2085. 統(tǒng)計(jì)出現(xiàn)過一次的公共字符串(哈希表)+2807. 在鏈表中插入最大公約數(shù)

    【LeetCode題解】2645. 構(gòu)造有效字符串的最少插入數(shù)(計(jì)算組數(shù)+動(dòng)態(tài)規(guī)劃+考慮相鄰字母)+2085. 統(tǒng)計(jì)出現(xiàn)過一次的公共字符串(哈希表)+2807. 在鏈表中插入最大公約數(shù)

    2645. 構(gòu)造有效字符串的最少插入數(shù) 方法一:計(jì)算組數(shù) 1.用count統(tǒng)計(jì),能構(gòu)成幾組abc 2.如果當(dāng)前字符大于之前字符,說明還在組內(nèi),不更新 3.如果當(dāng)前字符小于等于之前字符,說明不是同一組的abc,組數(shù)更新 4.最終返回值:組數(shù)*3,再減去原本的字符數(shù),就是要插入的次數(shù) 方法二

    2024年04月12日
    瀏覽(95)
  • 算法第十七天-構(gòu)造有效字符串的最少插入數(shù)

    算法第十七天-構(gòu)造有效字符串的最少插入數(shù)

    考慮abc的個(gè)數(shù) 假設(shè)答案有n個(gè)\\\"abc\\\"組成,那么需要插入的字符個(gè)數(shù)為 3 ? n ? l e n ( s ) 3*n - len(s) 3 ? n ? l e n ( s ) 。 對(duì)于相鄰的兩個(gè)字符x和y(x在y左側(cè)): 如果 x y xy x y ,那么x和y可以在同一個(gè)\\\"abc\\\"內(nèi),否則一定不在; 如果 x ≥ y xge y x ≥ y ,那么x和y一定不可以在同一個(gè)

    2024年01月17日
    瀏覽(21)
  • LeetCode——最小化字符串長(zhǎng)度

    LeetCode——最小化字符串長(zhǎng)度

    目錄 一、題目 二、題目解讀? 三、代碼? 1、set去重 2、用一個(gè)二進(jìn)制數(shù)記錄每個(gè)字母是否出現(xiàn)過 6462. 最小化字符串長(zhǎng)度 - 力扣(Leetcode) 給你一個(gè)下標(biāo)從? 0 ?開始的字符串? s ?,重復(fù)執(zhí)行下述操作? 任意 ?次: 在字符串中選出一個(gè)下標(biāo)? i ?,并使? c ?為字符串下標(biāo)? i

    2024年02月08日
    瀏覽(90)
  • Leetcode 678. 有效的括號(hào)字符串

    有效的括號(hào)字符串 【問題描述】 給你一個(gè)只包含三種字符的字符串,支持的字符類型分別是 ‘(’、‘)’ 和 ‘*’。請(qǐng)你檢驗(yàn)這個(gè)字符串是否為有效字符串,如果是有效字符串返回 true 。 有效字符串符合如下規(guī)則: 示例 1: 輸入:s = “()” 輸出:true 示例 2: 輸入:s = “

    2024年02月13日
    瀏覽(25)
  • 【LeetCode每日一題】2182. 構(gòu)造限制重復(fù)的字符串

    【LeetCode每日一題】2182. 構(gòu)造限制重復(fù)的字符串

    2024-1-13 2182. 構(gòu)造限制重復(fù)的字符串 思路: 按照字符出現(xiàn)次數(shù)從高到低的順序進(jìn)行重復(fù),通過維護(hù)一個(gè)指針 j 來尋找下一個(gè)非零出現(xiàn)次數(shù)的字母。同時(shí),利用 StringBuilder 對(duì)象可以高效地構(gòu)建字符串,避免頻繁的字符串拼接操作 首先,創(chuàng)建一個(gè)長(zhǎng)度為26的數(shù)組 cnt ,用于統(tǒng)計(jì)字

    2024年01月18日
    瀏覽(25)
  • 動(dòng)態(tài)規(guī)劃學(xué)習(xí)——最長(zhǎng)回文子序列,讓字符串變成回文串的最小插入次數(shù)

    動(dòng)態(tài)規(guī)劃學(xué)習(xí)——最長(zhǎng)回文子序列,讓字符串變成回文串的最小插入次數(shù)

    1.題目 給你一個(gè)字符串? s ?,找出其中最長(zhǎng)的回文子序列,并返回該序列的長(zhǎng)度。 子序列定義為:不改變剩余字符順序的情況下,刪除某些字符或者不刪除任何字符形成的一個(gè)序列。 示例 1: 示例 2: 提示: 1 = s.length = 1000 s ?僅由小寫英文字母組成 2.題目接口 ?3.解題思路

    2024年02月04日
    瀏覽(17)
  • LeetCode 2696. 刪除子串后的字符串最小長(zhǎng)度

    1、題目描述 給你一個(gè)僅由? 大寫 ?英文字符組成的字符串? s ?。 你可以對(duì)此字符串執(zhí)行一些操作,在每一步操作中,你可以從? s ?中刪除? 任一個(gè) ? \\\"AB\\\" ?或? \\\"CD\\\" ?子字符串。 通過執(zhí)行操作,刪除所有? \\\"AB\\\" ?和? \\\"CD\\\" ?子串,返回可獲得的最終字符串的? 最小 ?可能長(zhǎng)度

    2024年01月19日
    瀏覽(19)
  • 【LeetCode2696】刪除子串后的字符串最小長(zhǎng)度

    【題目鏈接】 標(biāo)簽: 棧 、 字符串 、 模擬 難度: 簡(jiǎn)單 給你一個(gè)僅由 大寫 英文字符組成的字符串 s 。 你可以對(duì)此字符串執(zhí)行一些操作,在每一步操作中,你可以從 s 中刪除 任一個(gè) “AB” 或 “CD” 子字符串。 通過執(zhí)行操作,刪除所有 “AB” 和 “CD” 子串,返回可獲得的

    2024年01月17日
    瀏覽(13)
  • 動(dòng)態(tài)規(guī)劃 多源路徑 字典樹 LeetCode2977:轉(zhuǎn)換字符串的最小成本

    動(dòng)態(tài)規(guī)劃 多源路徑 字典樹 LeetCode2977:轉(zhuǎn)換字符串的最小成本

    動(dòng)態(tài)規(guī)劃匯總 多源最短路徑 字典樹 視頻算法專題 給你兩個(gè)下標(biāo)從 0 開始的字符串 source 和 target ,它們的長(zhǎng)度均為 n 并且由 小寫 英文字母組成。 另給你兩個(gè)下標(biāo)從 0 開始的字符串?dāng)?shù)組 original 和 changed ,以及一個(gè)整數(shù)數(shù)組 cost ,其中 cost[i] 代表將字符串 original[i] 更改為字符

    2024年02月04日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包