本博文源於浙江大學《資料結構》,此題的解答是對kmp的演算法的應用,直接將kmp演算法copy,稍微裁剪一下就行了。
(c語言浙大版)kmp模式串匹配實現
直接按照此修改,沒有太大難度。
//kmp實現
#include
#include
#include
typedef
int position;
#define notfound -1
#define max 1000005
void
buildmatch
(char
*pattern,
int*match)
}position kmp
(char
*string,
char
*pattern)
else
if(p>
0) p = match[p-1]
+1;else s++;}
return
(p==m)
?(s-m)
:notfound;
}int
main()
return0;
}
KMP 串的模式匹配 25 分
給定兩個由英文本母組成的字串 string 和 pattern,要求找到 pattern 在 string 中第一次出現的位置,並將此位置後的 string 的子串輸出。如果找不到,則輸出 not found 本題旨在測試各種不同的匹配演算法在各種資料情況下的表現。各組測試資料特點如下 輸入第一行給...
7 7 串的模式匹配 25分
給定兩個由英文本母組成的字串 string 和 pattern,要求找到 pattern 在 string 中第一次出現的位置,並將此位置後的 string 的子串輸出。如果找不到,則輸出 not found 本題旨在測試各種不同的匹配演算法在各種資料情況下的表現。各組測試資料特點如下 輸入第一行給...
浙大資料結構 KMP 串的模式匹配 25 分
給定兩個由英文本母組成的字串 string 和 pattern,要求找到 pattern 在 string 中第一次出現的位置,並將此位置後的 string 的子串輸出。如果找不到,則輸出 not found 本題旨在測試各種不同的匹配演算法在各種資料情況下的表現。各組測試資料特點如下 資料0 小規...