1d-1c/BOJ

2750_수 정렬하기1 (JAVA)

yeon_11 2020. 10. 28. 12:02
 

2750번: 수 정렬하기

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

www.acmicpc.net

import java.util.Arrays;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();

		int[] arr = new int[N];
		for(int i=0; i<N; i++){
			arr[i] = sc.nextInt();
		}
		Arrays.sort(arr);

		for(int i=0; i<N; i++){
			System.out.println(arr[i]);
		}
	}
}

 

 

 

Arrays.sort()

 

  -  "배열 정렬"

  - Dual-Pivot Quicksort로서, O(nlong(n)) 성능을 제공

  - 일반적으로 퀵정렬(한개의 Pivot을 가지는) 보다 빠르다

  - 숫자 > 대문자 > 소문자 > 한글 순으로 정렬됨

 

int[] arr = new int[10];

Arrays.sort(arr); //오름차순 정렬

Arrays.sort(arr, 0, 5); //arr[0]~arr[5] 오름차순 정렬

Arrays.sort(arr, Collections.reverseOrder()); //내림차순 정렬