quickSort
Quick Sort
ํต ์ ๋ ฌ (Quick Sort)
: ํน์ ํ ๊ฐ์ ๊ธฐ์ค(ํผ๋ฒ)์ผ๋ก ํฐ ์ซ์์ ์์ ์ซ์๋ฅผ ์๋ฃ ๊ตํํ ๋ค์ ๋ฐฐ์ด์ ๋ฐ์ผ๋ก ๋๋๋ค
๋ํ์ ์ธ ๋ถํ ์ ๋ณต ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ํ๊ท ์๋๊ฐ O(N*logN)์ด๋ค
ํ์ง๋ง ํต ์ ๋ ฌ ์ต์ ์๊ฐ ๋ณต์ก๋๋ O(N^2)์ด๋ค
์ ๋ ฌ ๋ฐฉ๋ฒ
ํต ์ ๋ ฌ์ ๋ถํ ์ ๋ณต(divide and conquer) ๋ฐฉ๋ฒ์ ํตํด ๋ฆฌ์คํธ๋ฅผ ์ ๋ ฌํ๋ค. 1. ๋ฆฌ์คํธ ๊ฐ์ด๋ฐ์ ํ๋์ ์์๋ฅผ ๊ณ ๋ฅธ๋ค. ์ด๋ ๊ฒ ๊ณ ๋ฅธ ์์๋ฅผ ํผ๋ฒ์ด๋ผ๊ณ ํ๋ค. 2. ํผ๋ฒ ์์๋ ํผ๋ฒ๋ณด๋ค ๊ฐ์ด ์์ ๋ชจ๋ ์์๋ค์ด ์ค๊ณ , ํผ๋ฒ ๋ค์๋ ํผ๋ฒ๋ณด๋ค ๊ฐ์ด ํฐ ๋ชจ๋ ์์๋ค์ด ์ค๋๋ก ํผ๋ฒ์ ๊ธฐ์ค์ผ๋ก ๋ฆฌ์คํธ๋ฅผ ๋๋ก ๋๋๋ค. ์ด๋ ๊ฒ ๋ฆฌ์คํธ๋ฅผ ๋๋ก ๋๋๋ ๊ฒ์ ๋ถํ ์ด๋ผ๊ณ ํ๋ค. ๋ถํ ์ ๋ง์น ๋ค์ ํผ๋ฒ์ ๋ ์ด์ ์์ง์ด์ง ์๋๋ค. 3. ๋ถํ ๋ ๋ ๊ฐ์ ์์ ๋ฆฌ์คํธ์ ๋ํด ์ฌ๊ท(Recursion)์ ์ผ๋ก ์ด ๊ณผ์ ์ ๋ฐ๋ณตํ๋ค. ์ฌ๊ท๋ ๋ฆฌ์คํธ์ ํฌ๊ธฐ๊ฐ 0์ด๋ 1์ด ๋ ๋๊น์ง ๋ฐ๋ณต๋๋ค. ์ฌ๊ท ํธ์ถ์ด ํ๋ฒ ์งํ๋ ๋๋ง๋ค ์ต์ํ ํ๋์ ์์๋ ์ต์ข ์ ์ผ๋ก ์์น๊ฐ ์ ํด์ง๋ฏ๋ก, ์ด ์๊ณ ๋ฆฌ์ฆ์ ๋ฐ๋์ ๋๋๋ค๋ ๊ฒ์ ๋ณด์ฅํ ์ ์๋ค.

ํ์ด์ฌ ๋ฌธ๋ฒ ์์ฉ์ผ๋ก ๊ตฌํํ ํต์ ๋ ฌ
Last updated
Was this helpful?