python找出数组中第2大的数字
题目比较简单直接看实现即可,具体的注释在代码中都有:
#!usr/bin/env python
#encoding:utf-8
"""
__Author__:沂水寒城
功能:找出数组中第2大的数字
"""
def find_Second_large_num(num_list):
"""
找出数组中第2大的数字
"""
#直接排序,输出倒数第二个数即可
tmp_list=sorted(num_list)
print "Second_large_num is:", tmp_list[-2]
#设置两个标志位一个存储最大数一个存储次大数
#two存储次大值,one存储最大值,遍历一次数组即可,先判断是否大于one,若大于将one的
#值给two,将num_list[i]的值给one;否则比较是否大于two,若大于直接将num_list[i]的
#值给two;否则pass
one=num_list[0]
two=num_list[0]
for i in range(1,len(num_list)):
if num_list[i]>one:
two=one
one=num_list[i]
elif num_list[i]>two:
two=num_list[i]
else:
pass
print "Second_large_num is:", two
if __name__ == "__main__":
num_list=[34,11,23,56,78,0,9,12,3,7,5]
find_Second_large_num(num_list)结果如下:
Second_large_num is: 56 Second_large_num is: 56 [Finished in 0.3s]
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
