[题目]编写程序,求出所给出的字符串中最长的字母子串(以非字母隔开)。例如,字 符串"Apple $ 12pear watermelon $# Banana"中最长的字母子串为"watermelon"。
时间: 2024-12-17 20:51:53 浏览: 4
在编程中,我们可以使用滑动窗口或者动态规划的方式来解决这个问题。这里是一个简单的Python示例:
```python
def longest_alpha_substring(s):
max_len = 0
start = 0
for i in range(len(s)):
if not s[i].isalpha(): # 如果不是字母,则更新开始位置
if i - start
start = i + 1
else: # 否则是字母,继续检查是否能延长子串长度
continue
# 检查结束位置后是否有更长的子串
if len(s) - start > max_len:
max_len = len(s) - start
return s[start:start+max_len]
# 测试例子
s = "Apple $ 12pear watermelon $# Banana"
result = longest_alpha_substring(s)
print("最长的字母子串是:", result)
阅读全文