📅  最后修改于: 2023-12-03 15:10:14.452000             🧑  作者: Mango
这道题目考察的是程序员对数据结构的理解和编程能力。下面是题目内容:
给定一个字符串,找到最长的子字符串并输出其长度。子字符串必须是由相邻字符组成的。
def longest_substring(string):
length = 1
max_length = 1
for i in range(len(string) - 1):
if string[i] == string[i+1]:
length += 1
if length > max_length:
max_length = length
else:
length = 1
return max_length
这是使用 Python 语言实现的一个函数,输入一个字符串,返回最长的子字符串长度。
该函数使用了一个循环,依次遍历输入字符串中相邻的字符,记录当前相同字符数目和历史最大相同字符数目。如果找到一个不同的字符,更新当前相同字符数目为 1。
可以使用以下几个测试数据来测试该函数的正确性:
assert longest_substring('abcdee') == 2
assert longest_substring('abccde') == 2
assert longest_substring('abbcdee') == 2
assert longest_substring('aaaabbbb') == 4
assert longest_substring('abcd') == 1