用python实现
时间: 2023-07-12 22:17:44 浏览: 194
好的,这里是使用 Python 语言实现的代码示例:
```python
def match(s, n):
s_len = len(s)
n_len = len(n)
if s_len < n_len:
return -1
if s == n:
return 0
for i in range(s_len - n_len + 1):
sub = s[i:i+n_len]
if sub == n:
return i
return -1
# 测试代码
s1 = "hello world"
n1 = "world"
assert match(s1, n1) == 6
s2 = "hello world"
n2 = "xx"
assert match(s2, n2) == -1
s3 = "hello world"
n3 = "hell"
assert match(s3, n3) == 0
s4 = "hello world"
n4 = "world!"
assert match(s4, n4) == -1
```
这个 Python 实现与之前的 Java 实现基本相同,只是语法上有些不同。这个算法是比较简单的,容易实现和理解,但是对于大规模的字符串匹配问题,它并不是最优的解决方案。如果需要处理更大的字符串,可以考虑使用更高效的算法,比如 KMP 算法或 Boyer-Moore 算法。
阅读全文