수 정렬하기
이번 포스팅 문제는 2750 문제입니다. 시간복잡도 O(n^2)로 풀이했습니다.
문제요약
입력받은 숫자를 오름차순으로 정렬하여 출력하는 문제입니다.
풀이전략
1. 버블정렬로 풀이
구현하기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | package BackJoon.수정렬; import java.util.Scanner; /** * https://www.acmicpc.net/problem/2750 * 시간복잡도 O(n^2) * @author troh * */ public class _2750_수정렬하기 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int count = sc.nextInt(); int[] arr = new int[count]; for(int i=0; i<count; i++) { arr[i] = sc.nextInt(); } arr = sort(arr); for(int i=0; i<count; i++) { System.out.println(arr[i]); } } private static int[] sort(int[] arr) { for(int i=0; i<arr.length; i++) { for(int j=0; j<arr.length-i-1; j++) { if(arr[j] > arr[j+1]) { int temp = arr[j+1]; arr[j+1] = arr[j]; arr[j] = temp; } } } return arr; } } | cs |
배운점
버블 정렬은 시간복잡도 O(n^2) 란걸 다시한번 새겼으며 다시한번 정리해보았습니다. 같은 시간복잡도를 가지는 삽입 정렬에 대해서도 정리해보았습니다.
'알고리즘 > BackJoon' 카테고리의 다른 글
[백준 온라인저지]괄호 - 스택 (0) | 2019.09.12 |
---|---|
[백준 온라인저지]단어 뒤집기 - 스택 (0) | 2019.09.12 |
[백준 온라인저지]영화감독숌 - 브루트포스(5) (0) | 2019.09.06 |
[백준 온라인저지]체스판 다시 칠하기 - 브루트포스(4) (0) | 2019.09.04 |
[백준 온라인저지]덩치 - 브루트포스(3) (0) | 2019.09.03 |