1. 比较是成对比较的,先拿前2个数比较,大的那个记作当前最大值,小的那个是第二大值。然后每次比较一队元素,大的那个去和最大值比,如果比最大值大,就把它记为最大的,原来的最大和较小的那个比,大的记为第二大。如果大的那个没有最大值大,那么和第二大的比,如果比它大,就更新第二大的值。这样,每一对元素发生了3次比较,一共是1.5n次

这种方法和求最大最小元素类似

2. http://www.cnblogs.com/phishine/articles/1205351.html

其方法叫做 tournament method, 算法实现如下: 
    对数组a[1…n] 中元素成对的做比较,每次比较后讲较小的数拿出,形成的数组再继续这样处理,直到剩下最后的一个,就是数组中最小的那个。将这个过程以一个树的形式表现出来,如下图:

在这个过程中,非树叶节点就是比较的次数,一共进行了n-1 次比较,树根即为最小的元素。而第二小的元素一定是在这个过程中与根节点进行过比较的元素。即上图中5,3和2。这样的节点最多有个,在这些节点中找到最小的元素需要进行-1次比较。因此总共所需的比较次数为 n-1 + -1 = n+-2 次

求无序数组的第二小的元素相关推荐

  1. 第J题-=数组中等于K的数对(详解) =======给出一个整数K和一个无序数组A,A的元素为N个互不相同的整数

    给出一个整数K和一个无序数组A,A的元素为N个互不相同的整数,找出数组A中所有和等于K的数对.例如K = 8,数组A:{-1,6,5,3,4,2,9,0,8},所有和等于8的数对包括(-1,9),(0 ...

  2. 算法导论9.1-1找第二小的元素

    文章目录 算法导论9.1-1 1.证明:在最坏情况下,找到n个元素中第二小的元素需要 n+ceil(lgn)-2 次比较.(提示:可以同时找到最小元素) 1.证明 n-1 2.证明 ceil(lg) ...

  3. 求无序数组的第K(大/小)数的三种方法

    题目描述:给定一个无序数组(长度为n)和一个正整数 K,让你求此数组中第K大的数 方法1:最简单的思路,你肯定会想到 先把数组排序,然后再取下标为K的对应数组元素.这种方法肯定是可行的,但是这种方法无 ...

  4. 在一个无序的int数组上构建一个最小堆的时间复杂度_漫画:寻找无序数组的第k大元素(修订版)...

    ----- 第二天 ----- 题目是什么意思呢?比如给定的无序数组如下: 如果 k=6,也就是要寻找第6大的元素,这个元素是哪一个呢? 显然,数组中第一大的元素是24,第二大的元素是20,第三大的元 ...

  5. 数组中的元素赋值给元素_漫画:寻找无序数组的第k大元素

    本期封面作者:泰勒太乐 -----  第二天  ----- 题目是什么意思呢?比如给定的无序数组如下: 如果 k=6,也就是要寻找第6大的元素,这个元素是哪一个呢? 显然,数组中第一大的元素是24,第 ...

  6. 从当前元素继续寻找_云漫圈 | 寻找无序数组的第k大元素

    戳蓝字"CSDN云计算"关注我们哦! 作者:小灰 来源:程序员小灰 本期封面作者:泰勒太乐 -----  第二天  ----- 题目是什么意思呢?比如给定的无序数组如下: 如果 k ...

  7. 云漫圈 | 寻找无序数组的第k大元素

    戳蓝字"CSDN云计算"关注我们哦! 作者:小灰 来源:程序员小灰 本期封面作者:泰勒太乐 -----  第二天  ----- 题目是什么意思呢?比如给定的无序数组如下: 如果 k ...

  8. 遍历数组是什么意思_漫画:寻找无序数组的第k大元素(修订版)

    ----- 第二天 ----- 题目是什么意思呢?比如给定的无序数组如下: 如果 k=6,也就是要寻找第6大的元素,这个元素是哪一个呢? 显然,数组中第一大的元素是24,第二大的元素是20,第三大的元 ...

  9. 【算法】快速排序/数组第K小的元素

    快速排序 和归并排序一样,也是采用分治(Divide and Conquer)思想.分为三步: 分解:将数组A[p...q]划分成两个数组A[p..r-1]和A[r+1..q],使得A[p..r-1] ...

最新文章

  1. 小鱼提问1 类中嵌套public修饰的枚举,外部访问的时候却只能Class.Enum这样访问,这是为何?...
  2. python在linux报错xe6,python出现SyntaxError: Non-ASCII character '\xe6' in file \的错误
  3. 【2015沈阳现场A】
  4. js 字符串加减法_JavaScript (+) 加法运算符
  5. python形参实参
  6. 如何让FPGA中的SPI与其他模块互动起来
  7. NPOI随笔——图片在单元格等比缩放且居中显示
  8. “宜小搭”萌新报到,请多关照!
  9. WINCE6开机进度条
  10. Python机器学习:多项式回归与模型泛化005学习曲线
  11. AI大牛发起神秘字母接龙,起因竟然是……
  12. 机器学习分类模型评价指标和方法
  13. Python的Cython在Windows环境下的部署安装
  14. 【JDK】Mac版安装JDK并配置环境
  15. 微信小程序开发工具格式化代码快捷键以及更改快捷键
  16. activex控件无法安装解决方法
  17. 计算机基础与程序设计自考怎么过
  18. Charles的基本使用及教程
  19. 缺陷轰炸和beta测试详解
  20. docker golang buid rstp2webrtc

热门文章

  1. 深度学习图片分类CNN模板
  2. 六、最通俗易懂的JavaScript进阶教程(二)
  3. 二十三、Python数据建模(上),禁止转载
  4. 彩票假设 (Lottery Ticket Hypothesis) 在CV、NLP和OOD领域的应用
  5. 今日arXiv精选 | 23篇顶会论文:ICASSP / ICCV / CIKM / ICME / AAAI
  6. 多篇顶会论文看DRO (Distributionally Robust Optimization) 最新进展
  7. 阿里云机器学习PAI构建AI集团军作战,联手Intel在AI软硬件领域发力
  8. 直播 | 清华大学博士生姚远:对抗语言游戏
  9. 叮!您有一份来自平安人寿的真AI情书
  10. 【天池赛事】零基础入门语义分割-地表建筑物识别