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

yipeiwu_com5年前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程序设计有所帮助。

相关文章

python实现批量视频分帧、保存视频帧

本篇博客介绍利用python脚本实现视频分帧,并将每一帧保存到本地。主要基于opencv包来实现,在运行代码前确保opencv包已正确安装。下面是主要代码: import os i...

Python3.5面向对象编程图文与实例详解

Python3.5面向对象编程图文与实例详解

本文实例讲述了Python3.5面向对象编程。分享给大家供大家参考,具体如下: 1、面向过程与面向对象的比较 (1)面向过程编程(procedural programming) 面向过...

PyQtGraph在pyqt中的应用及安装过程

PyQtGraph在pyqt中的应用及安装过程

1.PyQtGraph简介: pyqtgraph的主要用途: 1、为数据、绘图、视频等提供快速、可交互图形显示。 2、提供快速开发应用的工具。 2.PyQtGraph的安装: pip i...

查看TensorFlow checkpoint文件中的变量名和对应值方法

实例如下所示: from tensorflow.python import pywrap_tensorflow checkpoint_path = os.path.join(mode...

在python3.5中使用OpenCV的实例讲解

在python3.5中使用OpenCV的实例讲解

最近在OpenCV的官方文档上看到一个人脸识别的示例代码,想要实现。由于我之前下好的OpenCV3.1中并不自带相关的函数,即opencv2/contrib/contrib.hpp这个文...