[프로그래머스][정렬] k번째 수

코드


import java.util.*;

class Solution {
    
    public int[] solution(int[] array, int[][] commands) {
        
        int[] answer = {};
        int[] newArr = {};
        List<Integer> answerList = new ArrayList<>();
        int commandLen = commands.length;
        int startIdx, endIdx, idx = 0;
        startIdx = endIdx = idx = 0;
        
        for (int i=0; i<commandLen; i++) {
            
            startIdx = commands[i][0] - 1;
            endIdx = commands[i][1];
            idx = commands[i][2] - 1;
            newArr = Arrays.copyOfRange(array, startIdx, endIdx);
            Arrays.sort(newArr);
            answerList.add(newArr[idx]);
        }
        
        int answerListSize = answerList.size();
        answer = new int[answerListSize];
        
        for (int i=0; i<answerListSize; i++) {
            answer[i] = answerList.get(i);
        }
        
        return answer;
    }
}

배운내용
1. Arrays.copyOfRange함수를 이용하여 특정 영역을 지정하여 배열을 복사하는 방법.
2. Arrays.sort함수를 이용하여 배열을 정렬하는 방법.


😌감사합니다😌

좋은 웹페이지 즐겨찾기