나의 풀이
import java.util.*;
class Solution {
public int[] solution(int[] array) {
ArrayList<Integer> list = new ArrayList<>();
int max=0;
int idx=0;
for(int i=0; i< array.length; i++){
if(array[i]>max){
max=array[i];
idx=i;
}
}
list.add(max);
list.add(idx);
return list.stream().mapToInt(i -> i).toArray();
}
}
▶ 배열을 리스트로 전환하여 반환
다른 사람의 풀이1
import java.util.*;
import java.util.stream.Collectors;
class Solution {
public int[] solution(int[] array) {
List<Integer> list = Arrays.stream(array).boxed().collect(Collectors.toList());
int max = list.stream().max(Integer::compareTo).orElse(0);
int index = list.indexOf(max);
return new int[] {max, index};
}
}
▶ max(Integer::compareTo).orElse(0) → 최대값을 구할 때 매우 자주쓰임★
다른 사람의 풀이2
class Solution {
public int[] solution(int[] array) {
int[] answer = new int[2];
for(int i=0;i<array.length;i++) {
if(array[i] > answer[0]) {
answer[0] = array[i];
answer[1] = i;
}
}
return answer;
}
}
▶ 리스트를 전혀 쓰지 않고 배열로만 반환★
'프로그래머스(자바) > LV.0(자바)' 카테고리의 다른 글
주사위의 개수 → 연산의 순서에 주의하자 (괄호의 중요성) (0) | 2022.11.24 |
---|---|
약수 구하기 - IntStream.rangeClosed(1, n) (0) | 2022.11.24 |
n배수 고르기 - List를 int형 배열로 전환★ +filter()★ (0) | 2022.11.24 |
문자열 정렬하기(2) - String클래스의 toCharArray() (0) | 2022.11.24 |
문자열 정렬하기(1) - replaceAll(), Stream(), mapToInt() (0) | 2022.11.24 |