๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

[์ธํ”„๋Ÿฐ_๋ฒ„๋ธ” ์ •๋ ฌ] 2. ๋ฒ„๋ธ” ์ •๋ ฌ

์‹œํ๋ฆฌํ‹ฐ์ง€ํ˜ธ 2024. 1. 15.
2. ๋ฒ„๋ธ” ์ •๋ ฌ

 

<<ํ’€์ด>>

 

-๊ฐ•์‚ฌ๋‹˜ ํ’€์ด-

๊ฐ•์‚ฌ๋‹˜์€ "๋ฒ„๋ธ” ์ •๋ ฌ"๋กœ ํ‘ธ์…จ๋‹ค. 

๋ฒ„ํ”Œ ์ •๋ ฌ์€ ๊ทผ์ ‘ํ•œ ๊ฐ’๋“ค์„ ๋น„๊ตํ•ด์„œ ์ˆœ์„œ๋ฅผ ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๊ฑฐ๋ฅผ ๋ฐ˜๋ณตํ•ด์„œ ์˜ค๋ฆ„์ฐจ์ˆœ์ธ ๊ฒฝ์šฐ ์˜ค๋ฅธ์ชฝ ๋ถ€ํ„ฐ ํฐ๊ฐ’์„ ๋ฐ€์–ด ๋„ฃ๋Š” ํ˜•์‹์ด๋‹ค.

๋ฒ„๋ธ” ์ด๋ผ๋Š” ๋‹จ์–ด๋Š” ๋ฐ‘ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ๊ทผ์ ‘ํ•œ ๊ฐ’๋“ค๊ณผ ๋น„๊ตํ•˜๋ฉด์„œ ํ‘œ์‹œํ•ด๋†“์€ ๊ฒƒ์ธ๋ฐ ์ด๋Ÿฐ ๋ชจ์–‘์— ๋ณธ ๋”ฐ์„œ ๋ช…์นญ์„ ๋ถ™์ธ ๊ฒƒ์ด๋‹ค! 

 

 

์ด ๋ฌธ์ œ์—์„œ ๋ฐฐ์šด ๊ฒƒ์€ ๋ฒ„๋ธ” ์ •๋ ฌ์ด๋ผ๋Š” ๊ฒƒ๊ณผ ๋ฒ„๋ธ” ์ •๋ ฌ์„ ํ•  ๋•Œ์˜ ์ด์ค‘ for๋ฌธ์˜ ํ˜•์‹์ด๋‹ค.

 for(int i = 0; i < n - 1; i++) {
           for(int j = 0; j < n -i -1; j++)

์ด์ค‘ for๋ฌธ์—์„œ ์•ˆ ์ชฝ for๋ฌธ์„ ๋ณด๋ฉด ' j < n -i -1' ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ, ๋ฒ„๋ธ” ์ •๋ ฌ ํ˜•์‹์ƒ ๊ฐ€์žฅ ํฐ๊ฐ’์„ ์˜ค๋ฅธ์ชฝ์— ํ•˜๋‚˜์”ฉ ๋ฐ€์–ด ๋„ฃ๋Š”๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์˜ค๋ฅธ์ชฝ์€ ์ด๋ฏธ ์ •๋ ฌ ๋œ ํ˜•ํƒœ์ธ ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ๊ตณ์ด ๋‹ค์‹œ ๊ฒ€์‚ฌ๋ฅผ ํ•ด์„œ ์ •๋ ฌ์„ ํ•  ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋”ฑ ๊ทธ ์ „๊นŒ์ง€๋งŒ ๋ณด๊ณ  ์ •๋ ฌํ•˜๋Š” ํ˜•ํƒœ์ธ ์…ˆ์ด๋‹ค. ๊ทธ๋ ‡๊ฒŒ ํ•ด์•ผ ๋ถˆํ•„์š”ํ•œ ๊ณ„์‚ฐ์„ ์ค„์ด๊ณ  ํšจ์œจ์„ ๋†’์ผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ด๋Ÿฌํ•œ ํ‘œํ˜„๋„ ์ž˜ ์•Œ์•„๋‘์ž!

 

import java.util.*;

class Main {
    private int[] solution(int n, int[] arr) {
       for(int i = 0; i < n - 1; i++) {
           for(int j = 0; j < n -i -1; j++) {
               if(arr[j] > arr[j + 1]) {
                   int tmp = arr[j];
                   arr[j] = arr[j + 1];
                   arr[j + 1] = tmp;
               }
           }
       }
       return arr;
    }
    public static void main(String[] args) {
        Main T = new Main();
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int[] arr = new int[n];
        for(int i = 0; i < n; i++) {
            arr[i] = in.nextInt();
        }

        for(int x : T.solution(n, arr)) {
            System.out.print(x + " ");
        }
    }
}

 

๋Œ“๊ธ€