找到第二大数,具体的形式如下:先定义两个变量:一个变量用来存储数组的最大数,初始值为数组首元素,另一个变 ...
思路分析: 可以只通过一遍扫描数组即可找出数组中第二大的数,即通过设置两个变量来进行判断。首先定义一个最大变量来存储数组的最大值,初始值为数组首元素 另一个是第二大变量,用来存储数组中的第二大数,因其一定不能超过数组中的最大值,所以初始值可设为最小负整数 ,然后遍历数组元素。如果数组元素的值比最大变量的值大,则将第二大变量的值更新为最大变量的值,最大变量的值更新为该元素的值 如果数组元素的值比最大 ...
2014-03-12 11:47 2 2930 推荐指数:
找到第二大数,具体的形式如下:先定义两个变量:一个变量用来存储数组的最大数,初始值为数组首元素,另一个变 ...
有一个int类型的数组,如何找出里面第二大的数,同时算法的时间复杂度是多少? 遍历解法: 思路:第一轮遍历找出第一大MAX,第二轮遍历找出第二大MAX2。 冒泡解法: 思路:第一轮倒序冒泡将最大数沉到最左,第二轮将次大数沉到次左。 ...
#!usr/bin/env python #encoding:utf-8 ''''' __Author__:沂水寒城 功能:找出数组中第2大的数字 ''' def ...
前两天面试的过程中问道的一个算法题,题目不算难,但是一步步分析优化的过程我觉得挺受启发,所以拿出来分享一下。 题目要求很简单,就是找出给定数组中第二大的数,略微思考之后我给出了下面的答案,即使用执行两次迭代,使用冒泡排序将两个最大值移动到数组末尾,数组中倒数第二个值即为要求的第二大的值 ...
思路:如果当前元素大于最大数 a1,则让第二大数a2等于原来的最大数 a1,再把当前元素的值赋给 a1 ...
设置两个数值来表示最大数和第二大数,在循环比较赋值即可 测试代码: 运行结果: smax = 4 ...
题目: 实现一个函数,查找一个整数数组中第二大数。 算法思想: 设置两个变量max1和max2,用来保存最大数和第二大数,然后将数组剩余的数依次与这两个数比较,如果这个数a比max1大,则先将max1赋给max2,使原先最大的数成为第二大的数,再将这个数a赋给max1,如果这个数a比max1小 ...
当年面试一家公司,面试官问我:一个int类型的数组怎么获取里面第二大的数字? 给了我一张纸和一支笔让我写一个方法,我想了想便写了一个方法: 然后问我能不能优化一下你的代码,我当然回答可以了,尴尬的就是我想了半天也想不出来,当时脑子一片空白........; 最后无奈的说 ...