用Map或哈希来计数:
import java.util.*;
public class Gift {
public int getValue(int[] gifts, int n) {
Map<Integer, Integer> m = new HashMap<>();
for(int i = 0; i < gifts.length; ++i){
if(m.containsKey(gifts[i])){
m.put(gifts[i], m.get(gifts[i]) + 1);
}else{
m.put(gifts[i], 1);
}
if(m.get(gifts[i]) > gifts.length/2){ //超过一半就返回
return gifts[i];
}
}
return 0;
}
}
京公网安备 11010502036488号