본문 바로가기
개발/알고리즘

[프로그래머스/JAVA] K번째수 - 정렬

by ynzu🤍 2022. 2. 20.
반응형

 

 

레벨 1이라 빠르고 쉽게 풀었다!

public int[] solution(int[] array, int[][] commands) {
        int[] answer = new int[commands.length];
        
        for(int i=0; i<commands.length; i++) {
        	
        	int[] command = commands[i];
        	int[] temp = new int[command[1]-command[0]+1];
        	
        	int k =0;
        	for(int j=command[0]-1; j<command[1]; j++) {
        		temp[k] = array[j];
        		k++;
        	}
        	
        	Arrays.sort(temp); //오름차순 정렬 
        	answer[i] = temp[command[2]-1];

        }
        return answer;
    }

 

만약 오름차순 정렬이 아니고 내림차순 정렬이라면 아래와 같이 처리해야 한다. int 타입일 때는 위와 같은 방법으로 정렬할 수 없고, Integer타입 배열로 변경해 주어야 한다.

  • int Array 내림차순 정렬 방법
Integer[]temp2 = Arrays.stream(temp).boxed().toArray(Integer[]::new);
Arrays.sort(temp2, Collections.reverseOrder());

 

 

728x90
반응형

댓글