์ ํ ์ ๋ ฌ์ ๋์ ๋ฐ์ดํฐ์์ ์ต๋๋ ์ต์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ดํฐ๊ฐ ๋์ด๋ ์์ผ๋ก ์ฐพ์๊ฐ๋ฉฐ ์ ํํ๋ ๋ฐฉ๋ฒ.
์๊ฐ ๋ณต์ก๋ O(n^2)์ผ๋ก ๋๋ฆฐ ํธ
ํต์ฌ
์ต์๊ฐ or ์ต๋๊ฐ ์ฐพ๊ณ , ๋จ์ ์ ๋ ฌ ๋ถ๋ถ์ ๊ฐ์ฅ ์์ ์๋ ๋ฐ์ดํฐ์ swap ํ๋ ๊ฒ
์ ํ ์ ๋ ฌ ๊ณผ์
1. ๋จ์ ์ ๋ ฌ ๋ถ๋ถ์์ ์ต์๊ฐ ๋๋ ์ต๋๊ฐ์ ์ฐพ๋๋ค.
2. ๋จ์ ์ ๋ ฌ ๋ถ๋ถ์์ ๊ฐ์ฅ ์์ ์๋ ๋ฐ์ดํฐ์ ์ ํ๋ ๋ฐ์ดํฐ๋ฅผ swapํ๋ค.
3. ๊ฐ์ฅ ์์ ์๋ ๋ฐ์ดํฐ์ ์์น๋ฅผ ๋ณ๊ฒฝํด(index++) ๋จ์ ๋ถ๋ถ์ ๋ฒ์๋ฅผ ์ถ์ํ๋ค.
4. ์ ์ฒด ๋ฐ์ดํฐ ํฌ๊ธฐ๋งํผ index๊ฐ ์ปค์ง ๋๊น์ง, ์ฆ ๋จ์ ์ ๋ ฌ ๋ถ๋ถ์ด ์์ ๋๊น์ง ๋ฐ๋ณตํ๋ค.
์๊ฐ๋ณต์ก๋๊ฐ O(n^2)์ธ ์ด์ ๋ฅผ ์๊ฐํด๋ณด์.
๋ฐ์ดํฐ์ ๊ฐ์๊ฐ n๊ฐ ์ผ๋,
์ฒซ ๋ฒ์งธ ๋ฃจํ์์ ๋น๊ตํ์๋ 1~ n-1๋ฒ์ผ๋ก n-1๋ฒ
๋ ๋ฒ์งธ ๋ฃจํ์์ ๋น๊ตํ์๋ 2~n-1๋ฒ์ผ๋ก n-2๋ฒ
๋ฐ๋ณตํ๋ฉด
(n-1) + (n-2) + ... + 2+ 1 => n(n-1)/2
์ด๋ฏ๋ก, ์๊ฐ๋ณต์ก๋๊ฐ O(n^2)๊ฐ ๋๋ค.
'๐ฏ์๊ณ ๋ฆฌ์ฆ > BOJ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค/Python] 11399:ATM ์ธ์ถ์๊ฐ ๊ณ์ฐํ๊ธฐ (1) | 2023.07.01 |
---|---|
4-3 ์ฝ์ ์ ๋ ฌ (0) | 2023.07.01 |
4-1 ๋ฒ๋ธ ์ ๋ ฌ (0) | 2023.07.01 |
04 ์ ๋ ฌ (0) | 2023.07.01 |
์ฝ๋ฉ ํ ์คํธ ์ถ์ ๊ฒฝํฅ (0) | 2023.06.26 |