[Baekjoon 2750번] 선택정렬, 삽입정렬 풀이

반응형
728x90
반응형

2750번 : 수 정렬하기

https://www.acmicpc.net/problem/2750

 

2750번: 수 정렬하기

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

www.acmicpc.net

 

 

 

 

선택정렬 풀이

import java.util.Scanner;

public class M2750_선택정렬 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int A = sc.nextInt();

        int[] arr = new int[A];

        for(int i = 0; i < A; i++) {
            arr[i] = sc.nextInt();
        }

        /** 선택정렬 */
        for (int i = 0; i < arr.length; i++) {
            for (int j = i + 1; j < arr.length; j++) {
                if (arr[j] < arr[i]) {
                    /* swap */
                    int temp = arr[j];
                    arr[j] = arr[i];
                    arr[i] = temp;
                }
            }
        }

        /* 출력 */
        for(int result : arr) {
            System.out.println(result);
        }

    }
}

 

 

 

 

삽입정렬 풀이

import java.util.Scanner;

public class M2750_삽입정렬 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        int A = sc.nextInt();

        int[] arr = new int[A];

        for(int i = 0; i < A; i++) {
            arr[i] = sc.nextInt();
        }

        /** 삽입정렬 */
        for (int i = 1; i < arr.length; i++) {
            for (int j = i; j > 0; j--) {
                if (arr[j] < arr[j - 1]) {
                    /* swap */
                    int temp = arr[j];
                    arr[j] = arr[j - 1];
                    arr[j - 1] = temp;
                } else {
                    break;
                }
            }
        }

        /* 출력 */
        for(int result : arr) {
            System.out.println(result);
        }

    }
}

 

 

반응형

Designed by JB FACTORY