1. ์ง์ ๊ฒ์ ๊ธฐ๋ฒ (Linear Search)
์ง์ ๊ฒ์ ๊ธฐ๋ฒ์ ๊ฐ์ฅ ๊ฐ๋จํ๊ณ ์ง๊ด์ ์ธ ๊ฒ์ ๋ฐฉ๋ฒ์ ๋๋ค. ์ฃผ์ด์ง ๋ชฉ๋ก ๋๋ ๋ฐฐ์ด์์ ์ํ๋ ๊ฐ์ ์ฐพ์ ๋ ์ฌ์ฉ๋ฉ๋๋ค. ์ ํ ๊ฒ์์ ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ์์ฐจ์ ์ผ๋ก ํ์ํ๋ฉฐ, ์ํ๋ ๊ฐ์ ์ฐพ์ ๋๊น์ง ๊ณ์ ๋ฐ๋ณตํ๋ ๋ฐฉ์์ผ๋ก ๋์ํฉ๋๋ค.
์๋ ๋ฐฉ์
์ง์ ๊ฒ์์ ๋ค์๊ณผ ๊ฐ์ ๋จ๊ณ๋ก ์ํ๋ฉ๋๋ค:
- ๊ฒ์ํ๋ ค๋ ๊ฐ๊ณผ ๋น๊ตํ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ์ ํํฉ๋๋ค.
- ์ ํํ ์์์ ์ํ๋ ๊ฐ์ด ์ผ์นํ๋์ง ํ์ธํฉ๋๋ค.
- ์ผ์นํ๋ค๋ฉด ๊ฒ์์ ์ข ๋ฃํ๊ณ ํด๋น ์์์ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํฉ๋๋ค.
- ์ผ์นํ์ง ์๋๋ค๋ฉด ๋ค์ ์์๋ฅผ ์ ํํ๊ณ ๋จ๊ณ 2๋ก ๋์๊ฐ๋๋ค.
- ๊ฒ์ ๋์์ด ๋์ ๋๋ฌํ ๋๊น์ง ๋จ๊ณ 2์์ 4๋ฅผ ๋ฐ๋ณตํฉ๋๋ค.
์๊ฐ ๋ณต์ก๋
์ง์ ๊ฒ์์ ์ต์ ์ ๊ฒฝ์ฐ์๋ ๋ชจ๋ ์์๋ฅผ ์์ฐจ์ ์ผ๋ก ํ์ธํด์ผ ํ๋ฏ๋ก, ์๊ฐ ๋ณต์ก๋๋ O(n)์ ๋๋ค. ์ฌ๊ธฐ์ n์ ๊ฒ์ ๋์์ ํฌ๊ธฐ์ ๋๋ค. ์ฆ, ๊ฒ์ ๋์์ ํฌ๊ธฐ๊ฐ ์ฆ๊ฐํ ์๋ก ๊ฒ์ ์๊ฐ๋ ๋น๋ก์ ์ผ๋ก ์ฆ๊ฐํฉ๋๋ค.
์ฅ๋จ์
์ง์ ๊ฒ์์ ์ฃผ์ ์ฅ์ ์ ๊ฐ๋จํ๊ณ ๊ตฌํ์ด ์ฝ๋ค๋ ๊ฒ์ ๋๋ค. ๋ํ, ๊ฒ์ ๋์์ด ์ด๋ฏธ ์ ๋ ฌ๋์ด ์์ง ์์๋ ๋์ํ ์ ์์ต๋๋ค. ํ์ง๋ง ๊ฒ์ ๋์์ ํฌ๊ธฐ๊ฐ ๋งค์ฐ ํด ๊ฒฝ์ฐ ํจ์จ์ฑ์ด ๋จ์ด์ง ์ ์์ผ๋ฉฐ, ์ ๋ ฌ๋ ๋ฐ์ดํฐ์์๋ ๋ค๋ฅธ ๊ฒ์ ๊ธฐ๋ฒ๋ค๋ณด๋ค ํจ์จ์ด ๋ฎ์ต๋๋ค.
์ง์ ๊ฒ์์ ์์ ํฌ๊ธฐ์ ๋ชฉ๋ก์ด๋ ์ ๋ ฌ๋์ง ์์ ๋ฐ์ดํฐ์์ ๊ฒ์ํ ๋ ์ ์ฉํ๊ฒ ํ์ฉ๋ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋๊ท๋ชจ ๋ฐ์ดํฐ์์๋ ๋ ๋์ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์ ๊ณ ๋ คํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
2. ์ด์ง ๊ฒ์ ๊ธฐ๋ฒ (Binary Search)
์ด์ง ๊ฒ์ ๊ธฐ๋ฒ์ ์ ๋ ฌ๋ ๋ฐฐ์ด์์ ํน์ ๊ฐ์ ์ฐพ๋๋ฐ ์ฌ์ฉ๋๋ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. ๋ฐฐ์ด์ ์ ๋ฐ์ฉ ๋๋์ด ์ฐพ๋ ๊ฐ๊ณผ ๋น๊ตํ๋ฉฐ, ๊ฒ์ ๋์์ ํฌ๊ธฐ๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ์ค์ฌ๋๊ฐ๋ ๋ฐฉ์์ผ๋ก ๋์ํฉ๋๋ค. ์ด๋ฌํ ์ด์ง ๊ฒ์์ ์ง์ ๊ฒ์๋ณด๋ค ํจ์จ์ ์ด๋ฉฐ, ๋๋์ ๋ฐ์ดํฐ์์๋ ๋น ๋ฅธ ๊ฒ์์ ์ ๊ณตํฉ๋๋ค.
์๋ ๋ฐฉ์
์ด์ง ๊ฒ์์ ๋ค์๊ณผ ๊ฐ์ ๋จ๊ณ๋ก ์ํ๋ฉ๋๋ค:
- ๊ฒ์ํ๋ ค๋ ๊ฐ๊ณผ ๋ฐฐ์ด์ ์ค์ ์์๋ฅผ ๋น๊ตํฉ๋๋ค.
- ๋ง์ฝ ์ค์ ์์๊ฐ ์ฐพ๋ ๊ฐ๊ณผ ์ผ์นํ๋ฉด ๊ฒ์์ ์ข ๋ฃํ๊ณ ํด๋น ์์์ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํฉ๋๋ค.
- ์ค์ ์์ ๋ณด๋ค ์ฐพ๋ ๊ฐ์ด ์๋ค๋ฉด, ์ค์ ๊ฐ์ ์ผ์ชฝ ์ ๋ฐ์ ๋์์ผ๋ก ๋ค์ ์ด์ง ๊ฒ์์ ์ํํฉ๋๋ค. ์ฆ, ์ฒซ ๋ฒ์งธ ์์๋ถํฐ ์ค์ ์์ ์ด์ ์ ์์๊น์ง๋ฅผ ๋์์ผ๋ก ๊ฒ์ํฉ๋๋ค.
- ์ค์ ์์ ๋ณด๋ค ์ฐพ๋ ๊ฐ์ด ํฌ๋ค๋ฉด, ์ค์ ๊ฐ์ ์ค๋ฅธ์ชฝ ์ ๋ฐ์ ๋์์ผ๋ก ๋ค์ ์ด์ง ๊ฒ์์ ์ํํฉ๋๋ค. ์ฆ, ์ค์ ์์ ์ดํ์ ์์๋ถํฐ ๋ง์ง๋ง ์์๊น์ง๋ฅผ ๋์์ผ๋ก ๊ฒ์ํฉ๋๋ค.
- ๊ฒ์ ๋์์ ๊ณ์ ๋ฐ์ผ๋ก ๋๋์ด๊ฐ๋ฉด์ ์ํ๋ ๊ฐ์ ์ฐพ์ ๋๊น์ง ์์ ๋จ๊ณ๋ฅผ ๋ฐ๋ณตํฉ๋๋ค.
์๊ฐ ๋ณต์ก๋
์ด์ง ๊ฒ์์ ๋งค๋ฒ ๊ฒ์ ๋์์ ํฌ๊ธฐ๋ฅผ ์ ๋ฐ์ผ๋ก ์ค์ด๊ธฐ ๋๋ฌธ์ ํ๊ท ์ ์ผ๋ก O(log n)์ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋๋ค. ์ฌ๊ธฐ์ n์ ๊ฒ์ ๋์์ ํฌ๊ธฐ์ ๋๋ค. ์ด์ง ๊ฒ์์ ์ ๋ ฌ๋ ๋ฐฐ์ด์์๋ง ๋์ํ๋ฏ๋ก, ์ ๋ ฌ์ ์์๋๋ ์๊ฐ์ ๊ฐ์ํด์ผ ํ์ง๋ง, ๊ฒ์ ์๊ฐ์ ๋งค์ฐ ํจ์จ์ ์ ๋๋ค.
์ฅ๋จ์
์ด์ง ๊ฒ์์ ์ฃผ์ ์ฅ์ ์ ํจ์จ์ ์ธ ๊ฒ์ ์๋์ ๋น ๋ฅธ ์คํ ์๊ฐ์ ๋๋ค. ์ด์ง ๊ฒ์์ ๋ฐฐ์ด์ด๋ ๋ชฉ๋ก์ด ์ ๋ ฌ๋์ด ์์ด์ผ ํ์ง๋ง, ํ ๋ฒ ์ ๋ ฌ๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ ๋ฒ ๊ฒ์ํด์ผ ํ๋ ๊ฒฝ์ฐ์๋ ์ ์ฉํฉ๋๋ค. ๋ฐ๋ฉด์ ์ฝ์ ๋๋ ์ญ์ ์ฐ์ฐ์ด ์์ฃผ ๋ฐ์ํ๋ ๊ฒฝ์ฐ์๋ ์ ์งํ๊ธฐ ์ด๋ ต์ต๋๋ค.
์ด์ง ๊ฒ์์ ๋๊ท๋ชจ์ ์ ๋ ฌ๋ ๋ฐ์ดํฐ์์ ๊ฐ์ฅ ์ ์ฉํ๋ฉฐ, ๋ค๋ฅธ ๊ฒ์ ๊ธฐ๋ฒ๋ค๋ณด๋ค ๋ฐ์ด๋ ์ฑ๋ฅ์ ๋ณด์ ๋๋ค.
3. ํด์ ๊ฒ์ ๊ธฐ๋ฒ (Hash Search)
ํด์ ๊ฒ์ ๊ธฐ๋ฒ์ ํด์ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ์ ์ฅํ๊ณ ๊ฒ์ํ๋ ๋น ๋ฅธ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. ํด์ ํจ์๋ฅผ ํตํด ๊ฐ์ ํด์ ํ ์ด๋ธ์ ์ ์ฅํ๊ณ , ๊ฒ์ ์์๋ ํด์ ํจ์๋ฅผ ๋ค์ ์ ์ฉํ์ฌ ํด๋น ๊ฐ์ ์ฐพ์ต๋๋ค. ํด์ ๊ฒ์์ ๋ฐ์ดํฐ์ ํฌ๊ธฐ์ ์๊ด์์ด ๋งค์ฐ ๋น ๋ฅด๊ฒ ๊ฒ์ํ ์ ์๋ ์ฅ์ ์ด ์์ต๋๋ค.
์๋ ๋ฐฉ์
ํด์ ๊ฒ์์ ๋ค์๊ณผ ๊ฐ์ ๋จ๊ณ๋ก ์ํ๋ฉ๋๋ค:
- ํด์ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ฒ์ํ ๊ฐ์ ํด์ ๊ฐ์ ๊ณ์ฐํฉ๋๋ค.
- ํด๋น ํด์ ๊ฐ์ ํด๋นํ๋ ํด์ ํ ์ด๋ธ์ ๋ฒํท์ ํ์ธํฉ๋๋ค.
- ๋ฒํท์ ์ ์ฅ๋ ๊ฐ๊ณผ ๊ฒ์ํ ๊ฐ์ด ์ผ์นํ๋์ง ํ์ธํฉ๋๋ค.
- ์ผ์นํ๋ค๋ฉด ๊ฒ์์ ์ข ๋ฃํ๊ณ ํด๋น ๊ฐ์ ์์น๋ฅผ ๋ฐํํฉ๋๋ค.
- ์ผ์นํ์ง ์๋๋ค๋ฉด ์ถฉ๋(Collision)์ด ๋ฐ์ํ ๊ฒ์ธ์ง ๊ฒ์ฌํฉ๋๋ค.
- ์ถฉ๋์ด ๋ฐ์ํ ๊ฒฝ์ฐ์๋ ๋ค๋ฅธ ํด์ ํจ์๋ฅผ ์ ์ฉํ๊ฑฐ๋, ์ฐ๊ฒฐ ๋ฆฌ์คํธ ๋ฑ์ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ถฉ๋์ ํด๊ฒฐํฉ๋๋ค.
- ์ถฉ๋์ ํด๊ฒฐํ ํ์ ๋ค์ ๋จ๊ณ 3๋ถํฐ 6์ ๋ฐ๋ณตํฉ๋๋ค.
์๊ฐ ๋ณต์ก๋
ํด์ ๊ฒ์์ ํด์ ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ์์ ์๊ฐ์ ๊ฒ์ํ ๊ฐ์ ์ฐพ๊ธฐ ๋๋ฌธ์ ํ๊ท ์ ์ผ๋ก O(1)์ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋๋ค. ํ์ง๋ง ํด์ ์ถฉ๋์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ์๋ ์ ํ ๊ฒ์ ๋๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ ๋ฑ์ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ถ๊ฐ์ ์ธ ๊ฒ์ ์๊ฐ์ด ์์๋ ์ ์์ต๋๋ค.
์ฅ๋จ์
ํด์ ๊ฒ์์ ์ฃผ์ ์ฅ์ ์ ๋งค์ฐ ๋น ๋ฅธ ๊ฒ์ ์๋์ ์์ ์๊ฐ ๋ณต์ก๋์ ๋๋ค. ํด์ ๊ฒ์์ ๋๋์ ๋ฐ์ดํฐ์์๋ ๋น ๋ฅด๊ฒ ๋์ํ๋ฉฐ, ํด์ ํจ์์ ์ ํ์ฑ์ ๋ฐ๋ผ ๊ฒ์ ์ฑ๋ฅ์ด ํฌ๊ฒ ๋ฌ๋ผ์ง ์ ์์ต๋๋ค. ํ์ง๋ง ํด์ ํจ์ ์ถฉ๋์ ๊ฐ๋ฅ์ฑ๊ณผ ์ถฉ๋์ ํด๊ฒฐํ๊ธฐ ์ํ ์ถ๊ฐ์ ์ธ ๊ณต๊ฐ ๋ฐ ์๊ฐ์ด ํ์ํ๋ค๋ ๋จ์ ์ด ์์ต๋๋ค.
ํด์ ๊ฒ์์ ๊ฒ์ ์๋๊ฐ ๋งค์ฐ ์ค์ํ ๊ฒฝ์ฐ, ํด์ ์ถฉ๋์ ํจ๊ณผ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์๋ ๊ฒฝ์ฐ์ ์ ์ฉํฉ๋๋ค. ๋ฐ์ดํฐ์ ์์๋ฅผ ์ ์งํด์ผ ํ๋ ์ํฉ์ด๋ ๋์ ์ธ ๋ฐ์ดํฐ์๋ ๋ถ์ ํฉํ ์ ์์ต๋๋ค.
4. ํธ๋ฆฌ ๊ฒ์ ๊ธฐ๋ฒ (Tree Search)
ํธ๋ฆฌ ๊ฒ์ ๊ธฐ๋ฒ์ ํธ๋ฆฌ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ์ ์ฅํ๊ณ ๊ฒ์ํ๋ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. ๋ฐ์ดํฐ๋ฅผ ๊ณ์ธต์ ์ผ๋ก ๊ตฌ์ฑํ ํธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ํ์ํ๋ฉฐ, ์ ์ ํ ๋ ธ๋๋ฅผ ์ฐพ์ ๋๊น์ง ํ์์ ๋ฐ๋ณตํฉ๋๋ค. ํธ๋ฆฌ ๊ฒ์์ ์ ๋ ฌ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๋ ๋ฐ ํจ๊ณผ์ ์ด๋ฉฐ, ๋ค์ํ ํธ๋ฆฌ ๊ตฌ์กฐ ์ค์์ ์ฃผ๋ก ์ด์ง ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
์๋ ๋ฐฉ์
ํธ๋ฆฌ ๊ฒ์์ ๋ค์๊ณผ ๊ฐ์ ๋จ๊ณ๋ก ์ํ๋ฉ๋๋ค:
- ํธ๋ฆฌ์ ๋ฃจํธ ๋ ธ๋๋ถํฐ ๊ฒ์ํ๋ ค๋ ๊ฐ๊ณผ ๋น๊ตํฉ๋๋ค.
- ๊ฒ์ํ๋ ค๋ ๊ฐ์ด ํ์ฌ ๋ ธ๋์ ๊ฐ๊ณผ ์ผ์นํ๋ฉด ๊ฒ์์ ์ข ๋ฃํ๊ณ ํด๋น ๋ ธ๋๋ฅผ ๋ฐํํฉ๋๋ค.
- ๊ฒ์ํ๋ ค๋ ๊ฐ์ด ํ์ฌ ๋ ธ๋์ ๊ฐ๋ณด๋ค ์๋ค๋ฉด, ํ์ฌ ๋ ธ๋์ ์ผ์ชฝ ์์ ๋ ธ๋๋ก ์ด๋ํ์ฌ ๋ค์ ๊ฒ์์ ์ํํฉ๋๋ค.
- ๊ฒ์ํ๋ ค๋ ๊ฐ์ด ํ์ฌ ๋ ธ๋์ ๊ฐ๋ณด๋ค ํฌ๋ค๋ฉด, ํ์ฌ ๋ ธ๋์ ์ค๋ฅธ์ชฝ ์์ ๋ ธ๋๋ก ์ด๋ํ์ฌ ๋ค์ ๊ฒ์์ ์ํํฉ๋๋ค.
- ๊ฒ์ํ ๊ฐ์ ์ฐพ์ ๋๊น์ง ์์ ๋จ๊ณ๋ฅผ ๋ฐ๋ณตํฉ๋๋ค.
์๊ฐ ๋ณต์ก๋
ํธ๋ฆฌ ๊ฒ์์ ํธ๋ฆฌ์ ๋์ด์ ๋น๋กํ๋ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋๋ค. ์ด์ง ํธ๋ฆฌ์์ ํ๊ท ์ ์ธ ์๊ฐ ๋ณต์ก๋๋ O(log n)์ด๋ฉฐ, ํธ๋ฆฌ๊ฐ ๊ท ํ์๊ฒ ๊ตฌ์ฑ๋์ด ์๋ ๊ฒฝ์ฐ์๋ ์ต์ ์ ๊ฒฝ์ฐ์๋ O(log n)์ ์๊ฐ ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋๋ค. ํ์ง๋ง ํธ๋ฆฌ๊ฐ ๋น๊ท ํ์ ์ธ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋ ๊ฒฝ์ฐ์๋ ์ต์ ์ ๊ฒฝ์ฐ O(n)์ ์๊ฐ ๋ณต์ก๋๊ฐ ๋ ์ ์์ต๋๋ค.
์ฅ๋จ์
ํธ๋ฆฌ ๊ฒ์์ ์ฃผ์ ์ฅ์ ์ ๊ท ํ์กํ ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉด ๋งค์ฐ ํจ๊ณผ์ ์ธ ๊ฒ์์ด ๊ฐ๋ฅํ๋ค๋ ์ ์ ๋๋ค. ์ด์ง ๊ฒ์ ํธ๋ฆฌ ๋ฑ์ ๊ท ํ ์กํ ํธ๋ฆฌ ๊ตฌ์กฐ๋ ์ ๋ ฌ๋ ๋ฐ์ดํฐ์์ ๋น ๋ฅธ ๊ฒ์์ ์ ๊ณตํ๋ฉฐ, ๋ฐ์ดํฐ์ ์ฝ์ ๊ณผ ์ญ์ ๋ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ ์ ์์ต๋๋ค. ํ์ง๋ง ํธ๋ฆฌ ๊ตฌ์กฐ ์ ์ง ๋ฐ ํ์ ์์ ์ด ํ์ํ๋ค๋ ๋จ์ ์ด ์์ต๋๋ค.
ํธ๋ฆฌ ๊ฒ์์ ์ ๋ ฌ๋ ๋ฐ์ดํฐ์์ ๊ฒ์ํ๋ ๋ฐ์ ํจ๊ณผ์ ์ด๋ฉฐ, ์ฝ์ ๋ฐ ์ญ์ ์ฐ์ฐ๋ ๋น ๋ฅธ ์๋๋ก ์ฒ๋ฆฌํ ์ ์๋ ๊ฒฝ์ฐ์ ์ ์ฉํฉ๋๋ค. ๋ฐ์ดํฐ์ ์์๋ฅผ ์ ์งํด์ผ ํ๋ ์ํฉ์ด๋ ๊ณ์ธต์ ์ธ ์ ๋ณด๋ฅผ ํ์ํด์ผ ํ๋ ๊ฒฝ์ฐ์ ์ ํฉํฉ๋๋ค.
5. ๊ทธ๋ํ ๊ฒ์ ๊ธฐ๋ฒ (Graph Search)
๊ทธ๋ํ ๊ฒ์ ๊ธฐ๋ฒ์ ๊ทธ๋ํ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ์ ์ฅํ๊ณ ๊ฒ์ํ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. ๊ทธ๋ํ๋ ์ ์ (Vertex)๋ค๊ณผ ์ด๋ฅผ ์ฐ๊ฒฐํ๋ ๊ฐ์ (Edge)๋ค๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ, ๊ทธ๋ํ ๊ฒ์์ ์ ์ ๋ค์ ํ์ํ์ฌ ์ํ๋ ๊ฐ์ ์ฐพ๋ ๊ณผ์ ์ ๋๋ค. ๊ทธ๋ํ ๊ฒ์์ ๋ง์ ๋ฌธ์ ์ ํ์ฉ๋ ์ ์์ผ๋ฉฐ, ๋ํ์ ์ธ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก๋ ๊น์ด ์ฐ์ ํ์(DFS)๊ณผ ๋๋น ์ฐ์ ํ์(BFS)์ด ์์ต๋๋ค.
์๋ ๋ฐฉ์
๊น์ด ์ฐ์ ํ์(DFS): ํ ์ ์ ์ผ๋ก๋ถํฐ ์์ํ์ฌ ์ฐ๊ฒฐ๋ ์ ์ ์ ์ต๋ํ ๊น๊ฒ ํ์ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ์คํ(Stack) ๋๋ ์ฌ๊ท ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์์ต๋๋ค.
- ์์ ์ ์ ์ ์คํ์ ๋ฃ๊ณ ๋ฐฉ๋ฌธ ์ฒ๋ฆฌํฉ๋๋ค.
- ์คํ์์ ์ ์ ์ ๊บผ๋ด ์ฐ๊ฒฐ๋ ์ ์ ์ค ๋ฐฉ๋ฌธํ์ง ์์ ์ ์ ์ ์คํ์ ๋ฃ๊ณ ๋ฐฉ๋ฌธ ์ฒ๋ฆฌํฉ๋๋ค.
- ์ด ๊ณผ์ ์ ๋ฐ๋ณตํ์ฌ ์คํ์ด ๋น์ด์ง ๋๊น์ง ์ํํฉ๋๋ค.
๋๋น ์ฐ์ ํ์(BFS): ํ ์ ์ ์ผ๋ก๋ถํฐ ์์ํ์ฌ ์ธ์ ํ ๋ชจ๋ ์ ์ ์ ์ฐ์ ์ ์ผ๋ก ํ์ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ํ(Queue)๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํ ์ ์์ต๋๋ค.
- ์์ ์ ์ ์ ํ์ ๋ฃ๊ณ ๋ฐฉ๋ฌธ ์ฒ๋ฆฌํฉ๋๋ค.
- ํ์์ ์ ์ ์ ๊บผ๋ด ์ฐ๊ฒฐ๋ ์ ์ ์ ํ์ ๋ฃ๊ณ ๋ฐฉ๋ฌธ ์ฒ๋ฆฌํฉ๋๋ค.
- ์ด ๊ณผ์ ์ ๋ฐ๋ณตํ์ฌ ํ๊ฐ ๋น์ด์ง ๋๊น์ง ์ํํฉ๋๋ค.
์๊ฐ ๋ณต์ก๋
๊ทธ๋ํ ๊ฒ์์ ์๊ฐ ๋ณต์ก๋๋ ์ ์ ์ ๊ฐ์๋ฅผ V, ๊ฐ์ ์ ๊ฐ์๋ฅผ E๋ผ๊ณ ํ ๋, ๊น์ด ์ฐ์ ํ์(DFS)๊ณผ ๋๋น ์ฐ์ ํ์(BFS)์ ์๊ฐ ๋ณต์ก๋๋ ๋ชจ๋ O(V+E)์ ๋๋ค. ๋ชจ๋ ์ ์ ๊ณผ ๊ฐ์ ์ ํ ๋ฒ์ฉ ๋ฐฉ๋ฌธํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ต์ ์ ๊ฒฝ์ฐ ๋ชจ๋ ์ ์ ๊ณผ ๊ฐ์ ์ ํ์ธํด์ผ ํฉ๋๋ค.
์ฅ๋จ์
๊ทธ๋ํ ๊ฒ์์ ์ฅ์ ์ ๊ทธ๋ํ ์๋ฃ ๊ตฌ์กฐ์ ์ ์ฐ์ฑ๊ณผ ๋ค์ํ ๋ฌธ์ ์ ๋ํ ๋์๋ ฅ์ ๋๋ค. ๊ทธ๋ํ ๊ฒ์์ ๊ฒฝ๋ก์ ์กด์ฌ ์ฌ๋ถ๋ฅผ ํ์ธํ๊ฑฐ๋, ์ฐ๊ฒฐ๋ ์ ์ ๋ค์ ํ์ํ๋ ๋ฑ ๋ค์ํ ๋ฌธ์ ์ ํ์ฉ๋ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋ํ์ ํฌ๊ธฐ๊ฐ ์ปค์ง๋ฉด ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ด ์ฆ๊ฐํ๊ณ , ํน์ ๊ทธ๋ํ์ ๊ตฌ์กฐ์ ๋ฐ๋ผ ํ์ ์๊ฐ์ด ์ง์ฐ๋ ์ ์๋ ๋จ์ ์ด ์์ต๋๋ค. ๋ํ, ๊ทธ๋ํ์์ ์ฌ์ดํด์ด ์กด์ฌํ๋ ๊ฒฝ์ฐ์๋ ๋ฌดํ ๋ฃจํ์ ๋น ์ง ์ ์๋ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.
๋๊ธ