モードを見つける必要がある巨大な int 配列があります。
for
不要と思われる2 つのループ (1 つはネスト) を使用するメソッドをいくつか見てきました。
ループが 1 つだけのモードを見つけるために考えられる唯一の方法は、Map
s を使用することです。
int[] elements = new int[]{....numbers...};
Map<Integer,Integer> map = new .....Map Type....;
for(int number : elements){
if(map.containsKey(Integer.valueOf(number))){
map.put(Integer.valueOf(number),map.get(Integer.valueOf(number))+1);
}else{
map.put(Integer.valueOf(number),1);
}
}
マップを使用すると実際にどのような速度の利点が得られるかはわかりません。より良い方法はありますか?