https://www.acmicpc.net/problem/2920
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int[] arr = new int[num];
for (int i=0; i< num; i++) {
arr[i] = sc.nextInt();
}
// Sort
Arrays.sort(arr);
// Bubble sort
// int temp = 0;
// for (int i=0; i< arr.length; i++) {
// for(int j=0; j< arr.length-i-1;j++) {
// if(arr[j] > arr[j+1]) {
// temp = arr[j];
// arr[j] = arr[j+1];
// arr[j+1] = temp;
// }
// }
// }
for (int i=0; i< num; i++) {
System.out.println(arr[i]);
}
}
}
단순히 숫자를 받아 Sort를 하여 출력하는 문제인 만큼 단순히 Arrays.sort()메서드를 사용하여도 문제를 풀 수 있었다.
문제를 통과하고 sort 메서드와 bubble sort의 효율성 차이를 비교하고 싶어서 bubble sort로도 실행을 돌려봤으나 작성한 Bubble sort와 Arrays의 sort메서드는 메모리와 시간이 비슷하게 소모되는 것을 확인할 수 있었다. 성능 차이가 별로 없어 앞으로 정렬에 대한 문제는 단순하게 Arrays.sort를 사용해도 될 것 같다.
위에 위치한 결과는 Bubble sort의 결과이며 아래에 위치한 결과는 Arrays.sort를 사용한 결과입니다.