first_max=arr[0]
second_max=first_max
if(arr[0]>arr[1]):
first_max=arr[0]
second_max=arr[1]
for i in range(1,len(arr)):
if(arr[i]>first_max):
second_max=first_max
first_max=arr[i]
elif(arr[i]>second_max):
second_max=arr[i]
print(second_max)
import random
import heapq
random.seed(1)
el = [random.randint(1, 100) for i in range(20)]
print el
first_max, second_max = heapq.nlargest(2, el)
print "Max element is {0} and the second max {1}".format(first_max,
second_max)
我认为上述代码将适用于所有情况。。。试着告诉我。你知道吗
试试这个->
我不确定我是否正确理解了你的问题,但是你提到的post已经给了你一些好的解决方案。例如,如果您不想自己编写算法,请使用标准库heapq,如下所示:
相关问题 更多 >
编程相关推荐