字串匹配
題目描述
設計乙個程式,從乙個主字串中查詢乙個子字串在主串中第一次出現的位置。主串和子串的長度不超過100。如果找不到,則輸出-1.
程式輸入說明
第一行輸入乙個整數n,說明需要進行匹配的例項數。
第二行輸入第一組需要進行匹配的主串
第三行輸入第一組需要匹配的子字串。
以下各行按照上面兩行的格式輸入,直到輸入了n組匹配例項。
程式輸出說明
輸出n行,每行顯示對應的匹配組中子串在主串中第一次出現的位置。
程式輸入樣例
3程式輸出樣例abaaaaaa
abacdeagb
acaaaa
bb
12-1
1 #include2 #include3 #include4bf演算法using
namespace
std;
56 typedef char*string;78
intlen1,len2;
9char s[110
];10
char t[110
];11
12void get_next(string t,int *next)
23else
26} 27}
2829
int index_kmp(string s,string t,int
pos)
39else42}
43if(j>len2)
46else
47return -1;48
}4950int
main()
59return0;
60 }
1//bf演算法
字串匹配問題 KMP BF
bf演算法實現 複雜度o m n 在str的pos下標開始,判斷是否包含sub字串,包含則返回第一次匹配成功的開始下標 int bf const char str,const char sub,int pos else 此處沒匹配上 if j lensub 上述if中,j 後,如果j lensub則...
字串匹配
題目描述 讀入資料string 然後讀入乙個短字串。要求查詢string 中和短字串的所有匹配,輸出行號 匹配字串。匹配時不區分大小寫,並且可以有乙個用中括號表示的模式匹配。如 aa 123 bb 就是說aa1bb aa2bb aa3bb都算匹配。輸入 輸入有多組資料。每組資料第一行輸入n 1 n ...
字串匹配
time limit 1000ms memory limit 65536k 給定兩個字串string1和string2,判斷string2是否為string1的子串。輸入包含多組資料,每組測試資料報含兩行,第一行代表string1,第二行代表string2,string1和string2中保證不出現...