で最大値を保持するインデックスを見つけたいと思いますArrayList
。どのインデックスがどの値を持っているかを追跡したいので、数字の順序を維持したい (つまり、ソートしない) 必要があります。値は乱数ジェネレーターからのものであり、同じ最大値を共有する 2 つ (またはそれ以上) のインデックスを持つ可能性があります。
例ArrayList
:
12、78、45、78
0,1,2,3 <- インデックス
(したがって、インデックス 1 と 3 には、最大値を持つ値が含まれます。インデックス 1 と 3 の値が 78 であるという事実を維持したいと思います。単に新しいものを作成し、新しいArrayList
インデックス 0 と 1 を持ちたくはありません。ArrayList
値を持っています 78)
したがって、最大値を持つすべてのインデックスを見つけたいと思います。これは、複数のインデックスがある場合にタイを「破る」ためにそれらを使用して何かを行うためです。では、最大値を含むインデックスを見つけて、インデックスと値の関係を維持するにはどうすればよいでしょうか?
私は次のメソッドを書きました:
public static ArrayList<Integer> maxIndices(ArrayList<Integer> numArrayList) {
// ???
return numArrayList;
}
public static void removeElement(ArrayList<Integer> numArrayList, int index) {
numArrayList.remove(index);
}
public static int getMaxValue(ArrayList<Integer> numArrayList) {
int maxValue = Collections.max(numArrayList);
return maxValue;
}
public static int getIndexOfMaxValue(ArrayList<Integer> numArrayList, int maxVal) {
int index = numArrayList.indexOf(maxVal);
return index;
}