package 把数组排成最小的数;
public class Solution {
public int MoreThanHalfNum_Solution(int[] array) {
if (null == array) {
return 0;
}
int len = array.length;
if (len == 0) {
return 0;
}
int count = 0;
int record = array[0];
for (int i = 0; i < len;) {
count++;
if (i + 1 < len) {
if (array[i] != array[i + 1]) {
count--;
i += 2;
if (count == 0) {
if (i < len) {
record = array[i];
}
}
} else {
count++;
i += 2;
}
} else {
break;
}
}
int index = 0;
if (count >= 1) {
for (int i = 0; i < len; i++) {
if (record == array[i]) {
index++;
}
}
if (index >= len / 2 + 1) {
return record;
} else {
return 0;
}
} else {
return 0;
}
}
public static void main(String[] args) {
int[] array = { 1, 2, 3, 2, 4, 2, 5, 2, 3 };
System.out.println(new Solution().MoreThanHalfNum_Solution(array));
}
}
数组中出现次数超过一般的数字
最新推荐文章于 2020-06-08 00:46:06 发布