今日题目(对应书上第39~42题): 今天的题目都比较经典,特别是第2题。 1. 数组中出现次数超过一半的数字 代码如下: 2. 最小的k个数 代码如下: 3.数据流中的中位数 代码如下: 4.连续子数组的最大和 代码如下: ...
分类:
编程语言 时间:
2018-02-04 19:26:53
阅读次数:
187
题:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。思路:首先看到这个题目,数组中一个数字出现的次数超过数组长度的一半,也就意味着这个数字出现的次数比数组中其它数字出现次数的总和还多。我们在遍历的数组的时候可以用两个值来记录,一个是数组出现的次数count,一个用来保存它的结果result,我们把数组的第一个数arr[0]作为结果保存跟下一个数字比较,count记为1,如果下一个数字
分类:
编程语言 时间:
2018-01-12 01:32:04
阅读次数:
189
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 思路1:时间复杂度 nlogn 先排序。 如果符合条件的话,那个数一定是在数组 ...
分类:
编程语言 时间:
2017-12-14 03:51:14
阅读次数:
188
数据库的acid,表(姓名,学号,课程,成绩)写sql找出每门课程分数的前三名 手写算法题问的:找出数组中出现次数超过一半的数字。 一面 自我介绍 项目介绍 项目提问 指针和数组的区别? 数组分为静态数组和动态数组 静态数组:int a[10] 容量已固定 动态数组: int a[] b=new i ...
分类:
其他好文 时间:
2017-10-13 23:51:56
阅读次数:
161
HDU1029:Ignatius and the Princess IV kuangbin专题12基础dp:B题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32767 K (Java/Others)Total Submiss ...
分类:
编程语言 时间:
2017-10-11 23:49:55
阅读次数:
265
http://blog.csdn.net/qq_27703417/article/details/70948850 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输 ...
分类:
编程语言 时间:
2017-08-26 18:41:41
阅读次数:
182
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 我一开始自己的思路是利用桶排序法,把每次出现的数标记并增加1,最后遍历一些数组 ...
分类:
编程语言 时间:
2017-08-16 17:15:25
阅读次数:
168
方法二: 思路二:如果有符合条件的数字,则它出现的次数比其他所有数字出现的次数和还要多。 在遍历数组时保存两个值:一是数组中一个数字,一是次数。遍历下一个数字时,若它与之前保存的数字相同,则次数加1,否则次数减1;若次数为0,则保存下一个数字,并将次数置为1。遍历结束后,所保存的数字即为所求。然后再 ...
分类:
编程语言 时间:
2017-08-03 22:43:11
阅读次数:
185
题目:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。比如输入一个长度为9的数组{1,2,3,2。2,2。5,4,2}。因为数字2在数组中出现5次,超过数组长度的一半,因此输出2. 解法一:基于Partition函数的O(n)算法: 我们的算法是受高速排序的算法的启示。在随机高速排序的 ...
分类:
编程语言 时间:
2017-07-08 18:45:25
阅读次数:
177
数字在排序数组中出现的次数 数组中只出现一次的数字 数组中出现次数超过一半的数字 连续子数组的最大和 从1-n中1出现的次数 二维数组中的查找 数组去重 排序算法总结 如何评价算法的优劣 1.冒泡排序 基本原理:重复的走访要排序的数组,每次比较两个值,如果前者大于后者则交换两者的位置。这样最大的元素 ...
分类:
编程语言 时间:
2017-07-04 22:25:19
阅读次数:
206