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

力扣2696. 刪除子串后的字符串最小長度

這篇具有很好參考價值的文章主要介紹了力扣2696. 刪除子串后的字符串最小長度。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

Problem: 2696. 刪除子串后的字符串最小長度

思路

可以知道能夠消除的只有AB 和CD 的者兩種排列順序方式,但是也許在發(fā)生一次消除后還會引發(fā)后續(xù)的消除可能性。

  1. 元素從前向后進行檢測,如果是A或者C進行標記入棧,然后傳入的如果是與之對應的B或者D,則達成消除,如果不是也直接入棧;
  2. 每次都對棧頂元素和即將傳入的元素做匹配判斷,匹配的消除,棧頂元素下移,同時繼續(xù)進行匹配判斷;
  3. 知道最后一個元素入棧,最后棧內含有的元素數(shù)量就是最后得到的最小長度。

解題方法

1.建立一個棧,初始化棧底=0;
2.將字符串的元素傳入與棧頂元素做比較,如果棧頂是A或者C,同時即將進站的元素是B或者D,那么此時對棧頂元素做彈出操作,同時元素不再入棧;
3.最后返回棧的長度-1即可(除去初始化的一個長度)。

復雜度

時間復雜度:

時間復雜度 O ( n ) O(n) O(n)

空間復雜度:

空間復雜度 O ( n ) O(n) O(n)文章來源地址http://www.zghlxwxcb.cn/news/detail-824093.html

Code

class Solution {
public:
    int minLength(string s) {
        std::stack<char>myStack;
        myStack.push('0');
        for(int i =0 ;i<s.size();i++){
            if((myStack.top()=='A'&& s[i]=='B')||(myStack.top()=='C'&& s[i]=='D'))
            {
                myStack.pop();
                continue;
            }
            myStack.push(s[i]);
        }
        return myStack.size()-1;
    }
};

到了這里,關于力扣2696. 刪除子串后的字符串最小長度的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 字符串解碼:給一個字符串,返回解碼后的字符串。

    字符串解碼:給一個字符串,返回解碼后的字符串。

    字符串解碼,給一個字符串s,返回解碼后的字符串。字符串編碼規(guī)則為k[str]表示括號內部str字符串正好重復k次,k保證為整數(shù),并且輸入的字符串肯定符合這種編碼規(guī)則不會有額外的空格。 注意事項: 注意括號可能發(fā)生嵌套,例如輸入字符串為 3[a2[c]] 應該返回accaccacc 1 = s

    2024年02月16日
    瀏覽(17)
  • c 取字符串中的子串

    strcpy(S.ch,ch1)?賦值函數(shù); 字符串沒特殊處理,就是從0開始的 %s輸出字符串,%c輸出字符

    2024年02月07日
    瀏覽(22)
  • ( 字符串) 647. 回文子串 ——【Leetcode每日一題】

    ( 字符串) 647. 回文子串 ——【Leetcode每日一題】

    難度:中等 給你一個字符串 s ,請你統(tǒng)計并返回這個字符串中 回文子串 的數(shù)目。 回文字符串 是正著讀和倒過來讀一樣的字符串。 子字符串 是字符串中的由連續(xù)字符組成的一個序列。 具有不同開始位置或結束位置的子串,即使是由相同的字符組成,也會被視作不同的子串

    2024年02月01日
    瀏覽(45)
  • 練習題 替換子串得到平衡字符串

    題目 有一個只含有? \\\'Q\\\', \\\'W\\\', \\\'E\\\',?\\\'R\\\' ?四種字符,且長度為? n ?的字符串。 假如在該字符串中,這四個字符都恰好出現(xiàn)? n/4 ?次,那么它就是一個「平衡字符串」。 給你一個這樣的字符串? s ,請通過「替換一個 子串 」的方式,使原字符串? s ?變成一個「平衡字符串」。

    2024年01月18日
    瀏覽(25)
  • C++ 字符串中找子串出現(xiàn)的個數(shù)。

    字符串中找子串出現(xiàn)的個數(shù)。 #include stdio.h #include string.h int find(char *s) { ? ?? ? ? char str[] = \\\"program\\\"; ? ? for (int i = 0; i strlen(str); i++) { ? ? ? ? if (s[i] != str[i]) ? ? ? ? ? ? return 0; ? ? } ? ? return 1; } ? void main() { ? ? char msg[100]; ? ? int i=0,cnt = 0; ? ? gets(msg); ? ? do { ? ? ?

    2024年01月20日
    瀏覽(22)
  • 【算法訓練-字符串 三】最長公共子串、最長公共子序列

    【算法訓練-字符串 三】最長公共子串、最長公共子序列

    廢話不多說,喊一句號子鼓勵自己:程序員永不失業(yè),程序員走向架構!本篇Blog的主題是【】,使用【】這個基本的數(shù)據(jù)結構來實現(xiàn),這個高頻題的站點是: CodeTop ,篩選條件為: 目標公司+最近一年+出現(xiàn)頻率排序 ,由高到低的去 ??蚑OP101 去找,只有兩個地方都出現(xiàn)過才做

    2024年02月09日
    瀏覽(22)
  • python判斷字符串是否包含子串的五種方法

    要判斷某一個字符串是否包含某一個子串,方法之一是可以利用python內置的字符串方法find()來查找,如果查找到,就返回子串第一個字符在原字符串中的索引位置,如果找不到,則返回-1,實例代碼如下: count()也是python內置的字符串方法之一,可以用于統(tǒng)計參數(shù)指定的子串在

    2024年02月11日
    瀏覽(26)
  • C++string類replace()函數(shù)(替換字符串中的子串)

    C++中的string類提供了replace()函數(shù),用于替換字符串中的子串。其函數(shù)原型如下: 其中,pos表示要替換的子串在原字符串中的起始位置,len表示要替換的子串的長度,str表示用來替換的字符串。 replace()函數(shù)的使用方法非常簡單,只需要傳入要替換的子串的位置、長度和替換字

    2024年02月05日
    瀏覽(27)
  • 從鍵盤輸入一個字符串,將此字符串按字符的ASCII碼值從小到大排序,并顯示排序后的字符串。

    從鍵盤輸入一個字符串,將此字符串按字符的ASCII碼值從小到大排序,并顯示排序后的字符串。

    題面: 字符串排序:要求編寫程序,將給定字符串中的字符,按照ASCII碼順序從小到大排序后輸出。 輸入格式: 輸入是一個以回車結束的非空字符串。 輸出格式: 輸出排序后的結果字符串。 輸入樣例: bfh3q487ybefg734 輸出樣例: 3344778bbeffghqy 思路: Dwl同學一開始給我的代碼

    2024年02月05日
    瀏覽(96)
  • 【JavaScript數(shù)據(jù)結構與算法】字符串類(計算二進制子串)

    【JavaScript數(shù)據(jù)結構與算法】字符串類(計算二進制子串)

    個人簡介 ?? 個人主頁: 前端雜貨鋪 ???♂? 學習方向: 主攻前端方向,也會涉及到服務端(Node.js) ?? 個人狀態(tài): 在校大學生一枚,已拿多個前端 offer(秋招) ?? 未來打算: 為中國的工業(yè)軟件事業(yè)效力 n 年 ?? 推薦學習:??前端面試寶典 ??Vue2 ??Vue3 ??Vue2/3項目

    2024年02月05日
    瀏覽(102)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

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

二維碼1

領取紅包

二維碼2

領紅包