MCPcopy Create free account
hub / github.com/TheAlgorithms/Python / naive_pattern_search

Function naive_pattern_search

strings/naive_string_search.py:12–35  ·  view source on GitHub ↗

>>> naive_pattern_search("ABAAABCDBBABCDDEBCABC", "ABC") [4, 10, 18] >>> naive_pattern_search("ABC", "ABAAABCDBBABCDDEBCABC") [] >>> naive_pattern_search("", "ABC") [] >>> naive_pattern_search("TEST", "TEST") [0] >>> naive_pattern_search("ABCDEGFTEST", "TEST")

(s: str, pattern: str)

Source from the content-addressed store, hash-verified

10
11
12def naive_pattern_search(s: str, pattern: str) -> list:
13 """
14 >>> naive_pattern_search("ABAAABCDBBABCDDEBCABC", "ABC")
15 [4, 10, 18]
16 >>> naive_pattern_search("ABC", "ABAAABCDBBABCDDEBCABC")
17 []
18 >>> naive_pattern_search("", "ABC")
19 []
20 >>> naive_pattern_search("TEST", "TEST")
21 [0]
22 >>> naive_pattern_search("ABCDEGFTEST", "TEST")
23 [7]
24 """
25 pat_len = len(pattern)
26 position = []
27 for i in range(len(s) - pat_len + 1):
28 match_found = True
29 for j in range(pat_len):
30 if s[i + j] != pattern[j]:
31 match_found = False
32 break
33 if match_found:
34 position.append(i)
35 return position
36
37
38if __name__ == "__main__":

Callers 1

Calls 1

appendMethod · 0.45

Tested by

no test coverage detected