五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

[個人筆記]算法筆記之KMP算法-字符串查找算法

2022-09-17 23:08 作者:白白_可樂  | 我要投稿

對于長度為 n 的字符串 S,以及一個長度為 m (m<=n) 的字符串 s,尋找 s 在 S 中第一次出現(xiàn)的位置.

樸素的解法時間復(fù)雜度是 O(m×n)

KMP算法的時間復(fù)雜度是 O(m+n)

相比于樸素解法匹配失敗就指針回退,KMP算法則是標(biāo)記 S 的指針不回退,標(biāo)記 s 的指針根據(jù)一個函數(shù)(回退函數(shù),前綴函數(shù),部分匹配表,失配函數(shù)等都是這個東西的翻譯,似乎每個網(wǎng)站的翻譯甚至同一個網(wǎng)站不同的作者翻譯都是不一樣的...)部分回退,從而節(jié)省了大量時間.

這個回退函數(shù)的基本原理就是通過預(yù)處理字符串 s ,找到 s 中前綴相同的部分,計算每個位置匹配失敗的時候需要回退的值,以便于在匹配失敗的時候不用整個后退.

所以關(guān)鍵問題就轉(zhuǎn)化成了如何求解回退函數(shù),基本思想就是尋找 s 中各個子串的最長公共前綴.



就寫這么多吧,希望以后的自己能看懂.


[個人筆記]算法筆記之KMP算法-字符串查找算法的評論 (共 條)

分享到微博請遵守國家法律
泸定县| 类乌齐县| 平昌县| 忻城县| 镇安县| 彰化市| 克拉玛依市| 彝良县| 江津市| 平度市| 涟水县| 徐水县| 盐池县| 监利县| 辽宁省| 河东区| 吉安县| 抚宁县| 鄂温| 营口市| 峨眉山市| 聂拉木县| 九寨沟县| 伊川县| 县级市| 赫章县| 隆子县| 连江县| 蓬溪县| 内丘县| 夏邑县| 门头沟区| 辽宁省| 建昌县| 梅州市| 精河县| 河曲县| 成武县| 河池市| 红河县| 元朗区|