ArrayList
의 최대 값을 갖는 인덱스/인덱스를 찾고 싶습니다. 인덱스에 어떤 가치가 있는지 추적하고 싶기 때문에 숫자가있는 순서 (즉, 정렬 없음)를 유지하려고합니다. 값은 난수 생성기에서 가져온 값이며 두 개 (또는 그 이상)의 인덱스가 동일한 최대 값을 공유 할 가능성이 있습니다.ArrayList의 최대 수 찾기 (복수의 최대 값 가능성 있음)
예 ArrayList
:
12
, 78, 45, 780,1,2,3 < - 인덱스
(인덱스 그래서,도 1 및 3을 포함 값은 최대 값을 가지고 있습니다. 인덱스 1과 3의 값이 78이라는 사실을 유지하고 싶습니다. 새로운 ArrayList
을 만들고 인덱스 0과 1을 가지고 싶지 않습니다. ArrayList
의 값은 7830입니다.
따라서 인덱스가 두 개 이상인 경우 넥타이를 "끊으려고"할 것이므로 최대 값을 가진 모든 인덱스를 찾고 싶습니다. 그러면 최대 값을 포함하고 인덱스와 값의 관계를 유지하는 인덱스를 어떻게 찾을 수 있습니까? 나는 다음과 같은 방법을 쓴
:
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;
}
것 같습니다. [무엇을 시도 했습니까?] (http://whathaveyoutried.com) –
@Matt Ball 내가 묻는 이유입니다. 그것을하는 방법에 도움이 필요합니다. 나는 해싱을 고려했다 ... –
ArrayList >으로 선언해야하는 습관을 버려야한다. 목록이어야한다면 List로 선언한다. – BevynQ