我知道A run是一系列相邻的重复值,你如何编写伪代码来计算数组中最长运行的长度,例如
5将是这个整数数组中运行时间最长的.
1 2 4 4 3 1 2 4 3 5 5 5 5 3 6 5 5 6 3 1
任何想法都会有所帮助.
bpg*_*rgo 11
def longest_run(array):
result = None
prev = None
size = 0
max_size = 0
for element in array:
if (element == prev):
size += 1
if size > max_size:
result = element
max_size = size
else:
size = 0
prev = element
return result
Run Code Online (Sandbox Code Playgroud)
编辑
哇.哇哇!这个伪代码实际上是有效的:
>>> longest_run([1,2,4,4,3,1,2,4,3,5,5,5,5,3,6,5,5,6,3,1])
5
Run Code Online (Sandbox Code Playgroud)