这道题,就直接想到双for,每个数组中数与后面所有数相比较,如果相等,则count加1,最后输出count,然后,将count归零,再赋值新的值。
int i,j; int t = 0; int s = 0; int c = nums.length; for(i = 0;i <= c-1;i++) { t = nums[i]; for(j = i;j <= c-1;j++) { if(t == nums[j]) { s++; } } if(s > c/2) { break; } s = 0; } return t;
但是,最后数组数值多了,就会超时。
我个人觉得可以在比较到相等时,可以将数值删除。