[알고리즘 코테 #8] 수 정렬하기

도경원's avatar
Sep 04, 2025
[알고리즘 코테 #8] 수 정렬하기

문제

N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.

입력

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

출력

첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.

예제 입력 1

5 5 2 3 4 1

예제 출력 1

1 2 3 4 5

코드

import java.util.*; import java.io.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int[] A = new int[N]; for(int i=0; i<N; i++) { A[i] = sc.nextInt(); } for(int i=0; i<N-1; i++) { for(int j=0; j<N-1; j++) { if (A[j] > A[j+1]) { int temp = A[j]; A[j] = A[j+1]; A[j+1] = temp; } } } for(int i=0; i<N; i++) { System.out.println(A[i]); } } }

회고

sort() 함수를 이용해 쉽게 정렬할 수 있지만, 이번에는 버블 정렬을 활용하여 직접 구현해 문제를 해결하였다.
import java.util.*; import java.io.*; // sort() 함수의 예시이다. public class Main { public static void main(String[] args) { int[] A = {1, 2, 8, 5, 7}; Arrays.sort(A); for(int i=0; i<A.length; i++) System.out.print(A[i] + " "); } }
 
Share article

Gyeongwon's blog