이전의 풀이: K번째 수 첫, 풀이

import java.util.*;
class Solution {
    public int[] solution(int[] array, int[][] commands) {
        int[] answer = new int[commands.length];
        for(int i=0;i<commands.length;i++) {
            List<Integer> comArr = new ArrayList<Integer>();
            for(int j=0;j<commands[i][1]-commands[i][0]+1;j++) {
                comArr.add(array[commands[i][0]+j-1]);
            }
            Collections.sort(comArr);
            answer[i] = comArr.get(commands[i][2]-1);
        }
        
        return answer;
    }
}
이번에 풀 때는 List와 Collections.sort()를 이용해서 풀어냈다.
List형 자료구조:
Collections.sort()
배열:Arrays.sort()
import java.util.*;
class Solution {
    public int[] solution(int[] array, int[][] commands) {
        int[] answer = new int[commands.length];
        for(int i=0;i<commands.length;i++) {
            int[] tmp = Arrays.copyOfRange(array, commands[i][0]-1, commands[i][1]);
            Arrays.sort(tmp);
            answer[i] = tmp[commands[i][2]-1];
        }
        
        return answer;
    }
}
이전 포스팅을 보고 Arrays.copyOfRange()가 있다는 것을 보고 다시 풀어봤다.
기억을 위해 정리해놓기!
Arrays.copyOfRange(int[] original, int from, int to)
- original: 복사할 배열
 - from: 복사를 시작할 인덱스(포함).
 - to: 복사를 끝낼 인덱스(제외).