编写程序查找一个字符串在另一个字符串中出现的次数,使用递归
时间: 2024-03-01 09:14:38 浏览: 65
计算一个字符串在另一字符串中出现的次数函数
5星 · 资源好评率100%
好的,我可以为您提供一个使用递归来查找一个字符串在另一个字符串中出现次数的示例程序。以下是一个Python实现的例子:
```python
def count_occurrences(text, pattern):
if len(text) < len(pattern):
return 0
elif text[:len(pattern)] == pattern:
return 1 + count_occurrences(text[len(pattern):], pattern)
else:
return count_occurrences(text[1:], pattern)
# 测试例子
text = "abababa"
pattern = "aba"
print(f"字符串 '{pattern}' 在 '{text}' 中出现的次数为: {count_occurrences(text, pattern)}")
```
这个程序中的 `count_occurrences` 函数使用递归来查找字符串 `pattern` 在字符串 `text` 中出现的次数。它首先检查 `text` 是否比 `pattern` 短,如果是则返回 0。然后,它检查 `text` 是否以 `pattern` 开头,如果是则返回 1 加上递归调用 `count_occurrences` 函数在剩余部分中查找出现次数。如果 `text` 不以 `pattern` 开头,则递归调用 `count_occurrences` 函数在去除首字符的 `text` 中查找出现次数。
在上述示例中,字符串 "aba" 在字符串 "abababa" 中出现的次数为 2。
阅读全文