字串查詢

2021-08-16 19:42:00 字數 704 閱讀 8590

題目:對於乙個給定的 source 字串和乙個 target 字串,你應該在 source 字串中找出 target 字串出現的第乙個位置(從0開始)。如果不存在,則返回-1

思路:很簡單,看**就能懂(python處理字元真的優勢很大),主要是注意一些細節

**:

class solution:

"""@param: source: source string to be scanned.

@param: target: target string containing the sequence of characters to match

@return: a index to the first occurrence of target in source, or -1 if target is not part of source.

"""def strstr(self, source, target):

# write your code here

if(source==none)or(target==none) :

return -1

else:

if target in source:

return (source.index(target))

else:

return (-1)

字串查詢

問題描述 對於乙個給定的 source 字串和乙個 target 字串,你應該在 source 字串中找出 target 字串出現的第乙個位置 從0開始 如果不存在,則返回 1。解決思路 採用雙重for迴圈解決,思路清晰,較容易寫,但效率不高,另外一種方法是用kmp演算法,效率較高。需注意邊界條件,...

字串查詢

字串查詢演算法中,最著名的兩個是kmp演算法 knuth morris pratt 和bm演算法 boyer moore 兩個演算法在最壞情況下均具有線性的查詢時間。但是在實用上,kmp演算法並不比最簡單的c庫函式strstr 快多少,而bm演算法則往往比kmp演算法快上3 5倍。但是,最壞的情況下...

字串查詢

對於乙個給定的 source 字串和乙個 target 字串,你應該在 source 字串中找出 target 字串出現的第乙個位置 從0開始 如果不存在,則返回 1。樣例 1 輸入 source source target target 輸出 1 樣例解釋 如果source裡沒有包含target的...