题解 | #数组中出现次数超过一半的数字#
数组中出现次数超过一半的数字
http://www.nowcoder.com/practice/e8a1b01a2df14cb2b228b30ee6a92163
思路:利用HashMap的Key和Value生成哈希表进行对应查找
import java.util.Map;
public class Solution {
public int MoreThanHalfNum_Solution(int [] array) {
Map<Integer,Integer>map=new HashMap<>();
if (array.length==1){
return array[0];
}
for (int i=0;i<array.length;i++){
if (map.containsKey(array[i])){
int a=map.get(array[i]);
a++;
if (a>array.length/2){
return array[i];
}
map.put(array[i],a);
}else {
map.put(array[i],1);
}
}
return 0;
}
}