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

yipeiwu_com7年前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工程的分层结构详解

前言 传统上我们都知道在Django中的MTV模式,具体内容含义我们再来回顾一下: M:是Model的简称,它的目标就是通过定义模型来处理和数据库进行交互,有了这一层或者这种类型的对象...

python控制台中实现进度条功能

python控制台中实现进度条功能

我们大多数人都希望写一些简单的python脚本的同时都想能够在程序运行的过程中实现进度条的功能以便查看程序运行的速度或者进度。今天就和大家探讨这个问题:如何在python控制台中实现进度...

Python内置数据结构与操作符的练习题集锦

第一题: give you two var a and b, print the value of a+b, just do it! 根据提议,给出两个变量 a 和 b 并打印出 a+b...

python将unicode转为str的方法

问题:  将u'\u810f\u4e71'转换为'\u810f\u4e71'   方法:  s_unicode = u'\u810f\u4e...

Python读写docx文件的方法

Python读写word文档有现成的库可以处理。我这里采用 python-docx。可以用pip install python-docx安装一下。 这里说一句,ppt和excel也有类似...