Python实现找出数组中第2大数字的方法示例

yipeiwu_com6年前Python基础

本文实例讲述了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]

PS:这里再为大家推荐一款关于排序的演示工具供大家参考:

在线动画演示插入/选择/冒泡/归并/希尔/快速排序算法过程工具:
http://tools.jb51.net/aideddesign/paixu_ys

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python加密解密算法与技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

简单了解django缓存方式及配置

前言 由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存, 1. 缓存的概述: 缓存将一个某个views的...

浅析Python中的多进程与多线程的使用

在批评Python的讨论中,常常说起Python多线程是多么的难用。还有人对 global interpreter lock(也被亲切的称为“GIL”)指指点点,说它阻碍了Python的...

Python实现的石头剪子布代码分享

我之前写过一篇基于JS的石头剪子布程序 《JavaScript实现的石头剪刀布游戏源码分享》,今天又基于Python写了一个实例,这里边的算法有点特殊但一时也想不到一个好的算法规律。 代...

Python装饰器用法示例小结

本文实例讲述了Python装饰器用法。分享给大家供大家参考,具体如下: 下面的程序示例了python装饰器的使用: 示例一: def outer(fun): print fun...

django项目中使用手机号登录的实例代码

django项目中使用手机号登录的实例代码

本文使用聚合数据的短信接口,需要先获取到申请接口的appkey和模板id 项目目录下创建ubtils文件夹,定义返回随机验证码和调取短信接口的函数 function.py文件 imp...