leetcode Majority Element 寻找出现次数最多元素
2015-08-04 19:30
507 查看
给定一个大小n的数组,求出现次数大于⌊ n/2 ⌋的元素:假定数组总是存在而且这样的元素总是存在:
int com(const void *s1,const void *s2){ int *p1=(int*)s1; int *p2=(int *)s2; return *p1-*p2; } int majorityElement(int* nums, int numsSize) { qsort(nums,numsSize,sizeof(int),com);//按小到大对数组排序 int k=1; for(int i=0;i<numsSize-1;i++) { if(nums[i]==nums[i+1]){k++;if(k>numsSize/2)return nums[i];else continue;}//如果连续相等 else k=1;} return nums[0]; }
相关文章推荐
- 又在作死
- java环境配置
- HDOJ 5347 MZL's chemistry 【打表】
- HDOJ 5347 MZL's chemistry 【打表】
- Android之——杀死用户选中的进程优化
- Linux C语言程序设计(十)——makefile
- HDU 3555 HDU 2089(数位DP)
- iOS界面-仿网易新闻左侧抽屉式交互
- 链表的创造(我的困难主要在这)
- 图论:fleury算法
- 逆序的BSF输出
- 图论:fleury算法
- Spring中RedirectAttributes对象重定向传参
- 15/8/4反射,注解,工程设计模式,线程
- 公钥,私钥和数字签名
- HDOJ 5349 MZL's simple problem 【set】
- wikioi 1294 全排列
- HDOJ 5349 MZL's simple problem 【set】
- HDU 3720 Arranging Your Team
- HDOJ 1050 Moving Tables(贪心)