码迷,mamicode.com
首页 > 编程语言 > 详细

在一个数组中找出现次数超过一半的数字

时间:2018-03-09 16:12:16      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:数组中出现次数超过一半的数字

package Suanfa; /**  * @author jixiang  * 在一个数组中找到次数超过一半的数字  */ public class MoreThanHalfNum {     public static void main(String[] args) {         int[] nums={2,3,1,3,4,1,5,1,1,2,1,1,1};         int Result;         int times=1;         Result=nums[0];         for(int i=1;i<nums.length;i++){             if(times==0){                 Result=nums[i];             }             else {                 if(Result==nums[i]){                     times++;                 }                 else {                     times--;                 }             }         }         System.out.println("数组中出现次数超过一半的结果是"+Result);     } }

代码自然先撸为敬!很简单,既然有个数出现的次数大于数组长度一半,则肯定他出现一次,times就加1,下次看到不是在减1.最后剩下谁就是谁!

在一个数组中找出现次数超过一半的数字

标签:数组中出现次数超过一半的数字

原文地址:http://blog.51cto.com/ji123/2084614

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!