刪除字串中的子串

2021-10-21 05:55:34 字數 595 閱讀 3607

7-29 刪除字串中的子串 (20 分)

輸入2個字串s1和s2,要求刪除字串s1**現的所有子串s2,即結果字串中不能包含s2。

輸入在2行中分別給出不超過80個字元長度的、以回車結束的2個非空字串,對應s1和s2。

在一行中輸出刪除字串s1**現的所有子串s2後的結果字串。

tomcat is a male ccatat

cat

tom is a male
簡單模式匹配bf演算法,缺點產生大量回溯,沒有利用已經匹配的結果,本題採用暴力求解可ac

#include#includeint main(){

char a[81];

char b[81];

char c[81];

int lena,lenb;

int i,j,k,m=0,flag;

gets(a);

gets(b);

lena=strlen(a);

lenb = strlen(b);

for(i=0;i改進,使用kmp演算法, 求next陣列

**實現有時間會補上

刪除字串中的子串

請編寫乙個函式,刪除乙個字串的一部分。函式原型如下 int del substr char str,char const substr 函式首先應判斷substr是否出現在str中。如果它並未出現,函式就返回0 如果出現,函式應該把str中位於該子串後面的所有字元複製到該子串的位置,從而刪除這個子串...

刪除字串中的子串

輸入2個字串s1和s2,要求刪除字串s1 現的所有子串s2,即結果字串中不能包含s2。輸入格式 輸入在2行中分別給出不超過80個字元長度的 以回車結束的2個非空字串,對應s1和s2。輸出格式 在一行中輸出刪除字串s1 現的所有子串s2後的結果字串。輸入樣例 tomcat is a male ccat...

刪除字串中的子串

輸入2個字串s1和s2,要求刪除字串s1 現的所有子串s2,即結果字串中不能包含s2。輸入格式 輸入在2行中分別給出不超過80個字元長度的 以回車結束的2個非空字串,對應s1和s2。輸出格式 在一行中輸出刪除字串s1 現的所有子串s2後的結果字串。輸入樣例 tomcat is a male ccat...