字串最長連續子串

2021-09-19 10:31:27 字數 505 閱讀 1838

題目:求給定字串中連續出現次數最多的子串。

例:abcbcbcabc,bc出現次數最多,為3次

分析:

1、將字尾陣列依次存入字串陣列中

2、依次將第i個字串的長度為j-i的子串與第j個字串相比,若相等,則比較j字串剩下有幾個子串與之相等

3、記錄每個子串出現的次數,並比較,保留最大的

pairfun(const string &str)

int count = 1;

int maxcount = 1;

string sub;

for (int i = 0; i < len; i++)

else

}if (count > maxcount)

}} }

return make_pair(maxcount, sub);

}

求最長連續公共子串行和最長連續子字串

問題的關鍵是如何定義子問題。假設有 xm x1 x2 x3 xm yn y1 y2 y3 yn 1.最長公共子串行 不必連續 定義f m,n 為xm和yn之間最長的子串行的長度 於是有f m,0 f 0,m 0 如果xm yn,則f m,n max 如果xm yn,則f m,n f m 1,n 1 ...

最長連續子串

牛牛有兩個字串 可能包含空格 牛牛想找出其中最長的公共連續子串,希望你能幫助他,並輸出其長度。輸入描述 輸入為兩行字串 可能包含空格 長度均小於等於50.輸出描述 輸出為乙個整數,表示最長公共連續子串的長度。示例1 abcde abgde 2 這個題是一道動態規劃的變形體 就是當a i 1 b j ...

字串裡找到連續最長的數字子串

輸入 ew1234dsf2d,返回 1234 思路 外層迴圈挨個便利str的每個位置。如果發現是數字則count 同時如果count max就更新max並且讓end記錄當前數字的下標。如果便利到乙個字母,則本次數字提取結束,把count置為0。public static void main stri...