ChromaOracle์ BFS(๋๋น ์ฐ์ ํ์)๋ผ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ์ฌ ์ด๋ค ์ปฌ๋ฌ ์ํธ ํผ์ฆ์ ๊ฐ์ฅ ์งง์ ๊ฐ๋ฅ ํด๋ ์ฐพ์ต๋๋ค. ์๋ฒ๋ ์ถ์ธกํ๊ฑฐ๋ ํด๋ฆฌ์คํฑ์ ๋ฐ๋ฅด์ง ์๊ณ , ๊ฐ์ฅ ์งง์ ์ํ์ค๋ถํฐ ์์ํ์ฌ ๋ชจ๋ ๊ฐ๋ฅํ ์์ ์ํ์ค๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ํ์ํ๋ค๊ฐ ํผ์ฆ์ ํธ๋ ๊ฒ์ ์ฐพ์ ๋๊น์ง ๊ณ์ํฉ๋๋ค. ์ด๋ ๋ฐํ๋๋ ํด๊ฐ ๊ฐ๋ฅํ ํ ์ ์ ์์ ์๋ฅผ ์ฌ์ฉํจ์ ๋ณด์ฅํฉ๋๋ค. ํธ๊ธฐ์ฌ ๋ง์ ํ๋ ์ด์ด์ ๊ธฐ์ ์งํฅ ๋ ์ ๋ชจ๋๋ฅผ ์ํด ์๋ ์๋ฆฌ๋ฅผ ์ค๋ช ํฉ๋๋ค.
ํผ์ฆ์ ๊ฒ์ ๋ฌธ์ ๋ก ๋ณด๊ธฐ
๋ชจ๋ ์ปฌ๋ฌ ์ํธ ํผ์ฆโโ์ํฐ ์ํธ, ๋ณผ ์ํธ, ๋๋ ์ด๋ค ๋ณํ์ด๋ โโ์ ๊ฒ์ ๋ฌธ์ ๋ก ๊ธฐ์ ๋ ์ ์์ต๋๋ค. ์์ ์์ ์ ํผ์ฆ ๋ณด๋๋ "์ํ"์ ๋๋ค: ๋ชจ๋ ์ํ๊ด์ ๊ฑธ์น ํน์ ์ ๋ฐฐ์ด์ ๋๋ค. ๋ชจ๋ ์ ํจํ ๋ถ์์ด๋ ์ด๋์ ํ ์ํ๋ฅผ ๋ค๋ฅธ ์ํ๋ก ๋ณํํฉ๋๋ค. ํผ์ฆ์ ํธ๋ ๊ฒ์ ์์ ์ํ๋ฅผ ๋ชฉํ ์ํโโ๊ฐ ์ํ๊ด์ด ํ ๊ฐ์ง ์๋ง ๋ด๊ฑฐ๋ ๋น์ด ์๋ ์ํโโ๋ก ๋ณํํ๋ ์์ ์ํ์ค๋ฅผ ์ฐพ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค.
์ง๋์ฒ๋ผ ์์ํด๋ณด์ธ์. ๊ฐ ๊ต์ฐจ๋ก๊ฐ ์ํ์ ๋๋ค. ๊ต์ฐจ๋ก ์ฌ์ด์ ๊ฐ ๋๋ก๊ฐ ์์ ๋๋ค. ์์ ์ํ๋ ์ง๊ธ ์๋ ๊ณณ์ ๋๋ค. ๋ชฉํ ์ํ๊ฐ ๋ชฉ์ ์ง์ ๋๋ค. ์๋ฒ์ ์ผ์ ๊ฐ์ฅ ์งง์ ๊ฒฝ๋ก๋ฅผ ์ฐพ๋ ๊ฒ์ ๋๋ค.
๋๋น ์ฐ์ ํ์์ด๋?
๋๋น ์ฐ์ ํ์์ ๋งค์ฐ ํน์ ํ ์์๋ก ์ด ์ํ ์ง๋๋ฅผ ํ์ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค: ์์์์ 1์ ๋จ์ด์ง ๋ชจ๋ ์ํ๋ฅผ ๋จผ์ ํ์ธํ๊ณ , ๊ทธ ๋ค์ 2์ ๋จ์ด์ง ๋ชจ๋ ์ํ๋ฅผ, ๊ทธ ๋ค์ 3์, ์์ผ๋ก ์งํํฉ๋๋ค. ๋ชจ๋ ๋ฐฉํฅ์ผ๋ก ์ธต๋ณ๋ก ๊ท ๋ฑํ๊ฒ ํผ์ณ์ง๋๋ค.
์ด ์ธตํ๋ ์ ๊ทผ๋ฒ์ด ์ต์ ์ฑ์ ๋ณด์ฅํฉ๋๋ค. BFS๋ ์ด๋ค 6์ ํด๋ฅผ ํ์ํ๊ธฐ ์ ์ ๋ชจ๋ 5์ ํด๋ฅผ ํ์ํ๊ธฐ ๋๋ฌธ์ ๋ชฉํ ์ํ์ ์ฒ์ ๋๋ฌํ๋ฉด ๋ฐ๋์ ์ต๋จ ๊ฒฝ๋ก๋ฅผ ํตํด ๋๋ฌํ ๊ฒ์ ๋๋ค. ๋ ์งง์ ๊ฒฝ๋ก๋ฅผ ๋์น ์ ์์ต๋๋คโโ๋ชจ๋ ์งง์ ๊ฐ๋ฅ์ฑ์ ์ด๋ฏธ ํ์ธ๋์์ต๋๋ค.
ํ๋ก์ธ์ค๋ ๋ค์๊ณผ ๊ฐ์ด ์๋ํฉ๋๋ค:
- ์ด๊ธฐ ๋ณด๋ ์ํ์์ ์์ํฉ๋๋ค.
- ๊ทธ ์ํ์์ ๋ชจ๋ ์ ํจํ ์๋ฅผ ์์ฑํฉ๋๋ค. ๊ฐ ์๋ ์ ๋ณด๋ ์ํ๋ฅผ ์์ฑํฉ๋๋ค.
- ์ด ์ ์ํ ์ค ์ด๋ค ๊ฒ์ด ํด๊ฒฐ๋ ์ํ์ธ์ง ํ์ธํฉ๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์์ ์ํ์ค๋ฅผ ๋ฐํํฉ๋๋ค.
- ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ชจ๋ ์ ์ํ๋ฅผ ํ์ ์ถ๊ฐํ๊ณ ํ์ ๋ค์ ์ํ๋ก 2๋จ๊ณ๋ถํฐ ๋ฐ๋ณตํฉ๋๋ค.
- ๋ชฉํ๋ฅผ ์ฐพ๊ฑฐ๋ ๋ชจ๋ ๋๋ฌ ๊ฐ๋ฅํ ์ํ๊ฐ ํ์๋ ๋๊น์ง ๊ณ์ํฉ๋๋ค.
ํ๊ฐ ํด๋ฅผ ์ฐพ์ง ๋ชปํ๊ณ ๋น์ด์ง๋ฉด ํผ์ฆ์ ํด๊ฒฐ ๋ถ๊ฐ๋ฅํฉ๋๋คโโ์๋ฒ๊ฐ ์ฆ์ ๋ณด๊ณ ํฉ๋๋ค.
์ํ ๊ณต๊ฐ ํํ
BFS๊ฐ ํจ์จ์ ์ผ๋ก ์๋ํ๋ ค๋ฉด ์๋ฒ๊ฐ ๊ฐ ๋ณด๋ ์ํ๋ฅผ ๊ฐ๊ฒฐํ๊ฒ ํํํ๊ณ ์ด๋ฏธ ๋ฐฉ๋ฌธํ ์ํ๋ฅผ ๊ฐ์งํ๋ ๋ฐฉ๋ฒ์ด ํ์ํฉ๋๋ค. ChromaOracle์ ๊ฐ ์ํ๊ด์ ์์ ์คํ์ผ๋ก ํํํ๊ณ ์ ์ฒด ๋ณด๋๋ฅผ ์ด๋ฌํ ์คํ์ ์ปฌ๋ ์ ์ผ๋ก ํํํฉ๋๋ค.
๊ฐ์ ์ํ๋ฅผ ๋ ๋ฒ ํ์ํ์ง ์๊ธฐ ์ํดโโ์๊ฐ๊ณผ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ญ๋นํ๊ธฐ ๋๋ฌธโโ์๋ฒ๋ ๊ฐ ์ํ์ ๋ํ ์ ๊ท ํค๋ฅผ ์์ฑํฉ๋๋ค. ์ด ํค๋ ์ํ๊ด ์์์ ๊ด๊ณ์์ด ๋์ผํ ๋ฐฐ์ด์ ๊ฐ์ ์ํ๋ก ์ทจ๊ธํ๋ ๋ณด๋์ ์ ๊ทํ๋ ๋ฌธ์์ด ํํ์ ๋๋ค. ๋ ๋ณด๋๊ฐ ๊ฐ์ ์ํ๊ด ๋ด์ฉ์ ๊ฐ์ง๊ณ ์์ง๋ง ์ข์ฐ ์์๋ง ๋ค๋ฅด๋ค๋ฉด ๊ฐ์ ํค๋ฅผ ์์ฑํ๊ณ ์ค๋ณต์ผ๋ก ์ธ์๋ฉ๋๋ค.
์ด ์ค๋ณต ์ ๊ฑฐ๋ ์ค์ํฉ๋๋ค. ๊ทธ๊ฒ ์์ด๋ ์๋ฒ๊ฐ ๊ฐ์ ์์น๋ฅผ ์๋ฐฑ๋ง ๋ฒ ์ฌ๋ฐฉ๋ฌธํ์ฌ ์ฌ์ฉ ๋ถ๊ฐ๋ฅํ ์ ๋๋ก ๋๋ ค์ง ๊ฒ์ ๋๋ค. ๊ทธ๊ฒ์ด ์์ผ๋ฉด ์๋ฒ๋ ๊ฐ ๊ณ ์ ์ํ๋ฅผ ํ ๋ฒ๋ง ์ฒ๋ฆฌํฉ๋๋ค.
์ BFS๊ฐ ์ต๋จ ํด๋ฅผ ๋ณด์ฅํ๋๊ฐ
๋ณด์ฅ์ ํ์ ์์์์ ์ต๋๋ค. BFS๋ ์์์์์ ๊ฑฐ๋ฆฌ(์์ ์๋ก ์ธก์ )์ ๋ฐ๋ผ ์๊ฒฉํ ์ํ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค. ๊ฑฐ๋ฆฌ๊ฐ N์ธ ๋ชจ๋ ์ํ๋ ๊ฑฐ๋ฆฌ๊ฐ N+1์ธ ์ด๋ค ์ํ๋ณด๋ค ๋จผ์ ์ฒ๋ฆฌ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์๋ฒ๊ฐ ๋ชฉํ ์ํ์ ์ฒ์ ๋๋ฌํ๋ฉด ๊ธธ์ด N์ ๊ฒฝ๋ก๋ฅผ ํตํด ๋๋ฌํ ๊ฒ์ด๋ฉฐ, ๊ธธ์ด๊ฐ N ๋ฏธ๋ง์ธ ๊ฒฝ๋ก๋ ์กด์ฌํ์ง ์์ต๋๋คโโ๋ชจ๋ ์งง์ ๊ฒฝ๋ก๋ ์ด๋ฏธ ์์ ํ ํ์๋์๊ธฐ ๋๋ฌธ์ ๋๋ค.
์ด๋ ์๊ณ ๋ฆฌ์ฆ์ ์ํ์ ์์ฑ์ด๋ฉฐ ํด๋ฆฌ์คํฑ์ด๋ ๊ทผ์ฌ๊ฐ ์๋๋๋ค. BFS๊ฐ ๋ฐํํ๋ ํด๋ ์ฆ๋ช ๊ฐ๋ฅํ๊ฒ ์ต์ ์ ๋๋ค.
BFS์ DFS
ChromaOracle์ ๋์ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก DFS(๊น์ด ์ฐ์ ํ์)๋ ์ง์ํฉ๋๋ค. DFS๋ ๋ค๋ฅด๊ฒ ์๋ํฉ๋๋ค: ์ธต๋ณ๋ก ํ์ํ๋ ๋์ ๋ฐฑํธ๋ํนํ๊ธฐ ์ ์ ๊ฐ๋ฅํ ํ ๊น๊ฒ ๋จ์ผ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ผ๊ฐ๋๋ค.
์ฅ๋จ์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- BFS๋ ์ต๋จ ํด๋ฅผ ์ฐพ์ง๋ง, ํ์ฌ ๊น์ด ์์ค์ ๋ชจ๋ ์ํ๋ฅผ ๋์์ ์ ์ฅํด์ผ ํ๋ฏ๋ก ๋ ๋ง์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- DFS๋ ๋ง์ ๊ฒฝ์ฐ ๋ ๋น ๋ฅด๊ฒ ํด๋ฅผ ์ฐพ๊ณ ๋ ์ ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ง๋ง ํด๊ฐ ์ต๋จ์ด ์๋ ์ ์์ต๋๋ค. ๋ง๋ ์ฒซ ๋ฒ์งธ ์ ํจํ ๊ฒฝ๋ก๋ฅผ ๋ฐํํ๋ฉฐ ํ์ํ ๊ฒ๋ณด๋ค ํจ์ฌ ๊ธธ ์ ์์ต๋๋ค.
๋๋ถ๋ถ์ ํ๋ ์ด์ด์๊ฒ BFS๊ฐ ์ฌ๋ฐ๋ฅธ ์ ํ์ ๋๋คโโ์ต์ ์์ ์๋ฅผ ์ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. DFS๋ ๋จ์ง ์ด๋ค ํด๋ผ๋ ๋นจ๋ฆฌ ์ํ ๋ ๋๋ ํผ์ฆ์ด BFS๊ฐ ๋ฉ๋ชจ๋ฆฌ ๋ถ์กฑ์ ๋น ์ง ์ ๋๋ก ํด ๋ ์ ์ฉํฉ๋๋ค.
๋ฏธ์คํฐ๋ฆฌ ๋ชจ๋ ์๋ ์๋ฆฌ
ChromaOracle์ ๊ฐ์ฅ ๋ ํนํ ๊ธฐ๋ฅ ์ค ํ๋๋ ์จ๊ฒจ์ง ๋๋ ์ ์ ์๋ ์์ ํฌํจํ๋ ํผ์ฆ์ฉ์ผ๋ก ์ค๊ณ๋ ๋ฏธ์คํฐ๋ฆฌ ๋ชจ๋์ ๋๋ค. ๋ง์ ํผ์ฆ ๊ฒ์์์ ์ผ๋ถ ์ํ๊ด ์ฌ๋กฏ์ ์ ๋์ ๋ฌผ์ํ๋ฅผ ํ์ํ๋ฉฐ, ์ค์ ์์ ๊ทธ ์ธต์ด ์ํ๊ด ๊ฐ์ฅ ์๊ฐ ๋ ๋๋ง ๋๋ฌ๋ฉ๋๋ค.
ChromaOracle์ ์์ด ๋ถ์์ ํตํด ์ด๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค:
- ์๋ฒ๊ฐ ์ ์ ์๋ ๊ฒ์ผ๋ก ํ์๋ ๋ชจ๋ ์์น๋ฅผ ์๋ณํฉ๋๋ค.
- ํผ์ฆ์ ๊ท์น๊ณผ ์ผ์นํ๋โโ๊ฐ ์์ด ์ ํํ ํ์๋งํผ ๋ํ๋์ผ ํ๋โโ๊ทธ ์์น์ ๋ํ ๋ชจ๋ ๊ฐ๋ฅํ ์ ํ ๋น์ ์์ฑํฉ๋๋ค.
- ๊ฒฐ๊ณผ๋ก ๋์ค๋ ๊ฐ ํผ์ฆ์ BFS๋ฅผ ์ฌ์ฉํด ๋ ๋ฆฝ์ ์ผ๋ก ํ์ด๋ ๋๋ค.
- ๋ชจ๋ ํด ์งํฉ์ ๋ถ์ํ์ฌ ์จ๊ฒจ์ง ์์ด ๋ฌด์์ด๋ ์์ ํ ์๋ฅผ ์ฐพ์ต๋๋ค.
์ด๋ฅผ "๊ณตํต ์ ๋์ฌ" ์ฐพ๊ธฐ๋ผ๊ณ ํฉ๋๋คโโ๋ชจ๋ ๊ฐ๋ฅํ ์ ํ ๋น์ ํด ์์์ ๋ํ๋๋ ๊ฐ์ฅ ๊ธด ์์ ์ํ์ค. ์ด ์๋ค์ ์ ์ ์๋ ๊ฒ์ด ๋ฌด์์ผ๋ก ๋๋ฌ๋๋ ์ ํํจ์ด ๋ณด์ฅ๋ฉ๋๋ค.
์ด ์ ๊ทผ๋ฒ์ ๋ถํ์ค์ฑ์ ๋ฌธ์ ๋ฅผ ์ฒ ์ ํ ๋ถ์์ ๋ฌธ์ ๋ก ๋ณํํฉ๋๋ค. ์๋ฒ๋ ์ถ์ธกํ๋ ๋์ ๋ชจ๋ ๊ฐ๋ฅ์ฑ์ ๊ณ ๋ คํ๊ณ ์ด๋ค ์๊ฐ ์ํ ์๋์ง ์๋ ค์ค๋๋ค.
์ฑ๋ฅ๊ณผ ์ค์ ํ๊ณ
์ปฌ๋ฌ ์ํธ ํผ์ฆ์ ์ํ ๊ณต๊ฐ์ ์ํ๊ด๊ณผ ์์ ์์ ๋ฐ๋ผ ๊ธฐํ๊ธ์์ ์ผ๋ก ์ปค์ง๋๋ค. 5๊ฐ ์์ ๋จ์ํ ํผ์ฆ์ ์์ฒ ๊ฐ์ ๋๋ฌ ๊ฐ๋ฅํ ์ํ๋ฅผ ๊ฐ์ง ์ ์์ต๋๋ค. 12๊ฐ ์์ ๋ณต์กํ ํผ์ฆ์ ์๋ฐฑ๋ง ๊ฐ๋ฅผ ๊ฐ์ง ์ ์์ต๋๋ค.
ChromaOracle์ ๋ธ๋ผ์ฐ์ ์์ TypeScript๋ฅผ ์ฌ์ฉํ์ฌ ์์ ํ ์คํ๋ฉ๋๋ค. ๋๋ถ๋ถ์ ํผ์ฆโโ์ฝ 10๊ฐ ์๊น์งโโ์ BFS๊ฐ 1์ด ๋ฏธ๋ง์ ์๋ฃ๋ฉ๋๋ค. ๋ ํฐ ํผ์ฆ์ ๋ช ์ด๊ฐ ๊ฑธ๋ฆด ์ ์์ต๋๋ค. ๋งค์ฐ ํฐ ๊ตฌ์ฑ์ ๋ธ๋ผ์ฐ์ ๋ฉ๋ชจ๋ฆฌ ํ๊ณ๋ฅผ ์ด๊ณผํ ์ ์์ผ๋ฉฐ ๊ทธ ์์ ์์ DFS๊ฐ ๋ ๋์ ์ต์ ์ด ๋ฉ๋๋ค.
์๋ฒ๋ ์์ ๊ณ์ฐ์ด๋ฉฐ ๋คํธ์ํฌ ํธ์ถ์ด ์์ต๋๋ค. ํผ์ฆ ๋ฐ์ดํฐ๋ ๋๋ฐ์ด์ค๋ฅผ ๋ ๋์ง ์์ผ๋ฉฐ ํ์ด ์๋๋ ๋๋ฐ์ด์ค์ ์ฒ๋ฆฌ ๋ฅ๋ ฅ์๋ง ์์กดํฉ๋๋ค.
์์ง ์ํคํ ์ฒ
๊ธฐ์ ๊ตฌํ์ ๊ด์ฌ ์๋ ๋ ์๋ฅผ ์ํด, ChromaOracle์ ์๋ฒ ์์ง์ ์ง์ค๋ ๋ชจ๋๋ก ๊ตฌ์ฑ๋ฉ๋๋ค:
- Container(์ปจํ ์ด๋) โโ ๋จ์ผ ์ํ๊ด์ ์์ ์คํ์ผ๋ก ํํํ๋ฉฐ push, pop, ๊ฐ์ฅ ์ ์ ์ฟผ๋ฆฌ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
- Collection(์ปฌ๋ ์ ) โโ ์ ์ฒด ๋ณด๋๋ฅผ ํํํ๋ฉฐ ํ์ฌ ์ํ์์ ๋ชจ๋ ์ ํจํ ์๋ฅผ ์์ฑํ๊ณ ์ค๋ณต ์ ๊ฑฐ๋ฅผ ์ํ ์ ๊ท ํค๋ฅผ ์์ฑํฉ๋๋ค.
- Search(ํ์) โโ BFS์ DFS ๋ชจ๋ ๊ตฌํํ๋ฉฐ ํ ๋๋ ์คํ๊ณผ ๋ฐฉ๋ฌธ๋ ์ํ ์งํฉ์ ๊ด๋ฆฌํฉ๋๋ค.
- Strategy(์ ๋ต) โโ ๋ค์ค ํด ๋ถ์์ ์กฐ์ ํ๋ฉฐ ๋ชจ๋ ํด๋ฅผ ์ฐพ๊ณ ๋ฏธ์คํฐ๋ฆฌ ๋ชจ๋์ฉ ๊ณตํต ์ ๋์ฌ๋ฅผ ๊ณ์ฐํฉ๋๋ค.
- Validation(๊ฒ์ฆ) โโ ํ์ด๊ฐ ์์๋๊ธฐ ์ ์ ํผ์ฆ ๊ตฌ์ฑ์ด ์ ํ์ฑ๋์๋์ง ํ์ธํฉ๋๋ค.
์์ง์ ํ๋ ์์ํฌ ์์กด์ฑ์ด ์์ต๋๋ค. ์์ TypeScript์ด๋ฉฐ ๋ ๋ฆฝ์ ์ผ๋ก ํ ์คํธ ๊ฐ๋ฅํ๊ณ ์ด๋ค JavaScript ๋ฐํ์์๋ ์ด์ ๊ฐ๋ฅํฉ๋๋ค.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
ChromaOracle์ด ํน์ ํผ์ฆ์์ ๋ ์ค๋ ๊ฑธ๋ฆฌ๋ ์ด์ ๋?
ํ์ด ์๊ฐ์ ์ํ ๊ณต๊ฐ์ ํฌ๊ธฐ์ ์์กดํ๋ฉฐ ์ด๋ ์, ์ํ๊ด, ๋น ์ฌ๋กฏ์ ์์ ์ํด ๊ฒฐ์ ๋ฉ๋๋ค. ์์ด ๋ง๊ณ ๋น ์ํ๊ด์ด ์ ์์๋ก ํ์ํ ๊ฐ๋ฅํ ์ํ๊ฐ ๋ ๋ง์ต๋๋ค. ๋น ์ํ๊ด์ด 1๊ฐ์ธ 12์ ํผ์ฆ์ ๋น ์ํ๊ด์ด 3๊ฐ์ธ 4์ ํผ์ฆ๋ณด๋ค ํจ์ฌ ํฐ ์ํ ๊ณต๊ฐ์ ๊ฐ์ง๋๋ค.
์๋ฒ๊ฐ ํด๋ฅผ ์ฐพ์ง ๋ชปํ ์ ์๋์?
ํด๊ฐ ์กด์ฌํ๋ฉด BFS๋ ํญ์ ๊ทธ๊ฒ์ ์ฐพ์ต๋๋ค. BFS๊ฐ ํด๋ฅผ ์ฐพ์ง ๋ชปํ๊ณ ์๋ฃ๋๋ฉด ํผ์ฆ์ ์ํ์ ์ผ๋ก ํด๊ฒฐ ๋ถ๊ฐ๋ฅํฉ๋๋คโโ์ ํจํ ์์ ์ํ์ค๊ฐ ๋ชฉํ ์ํ์ ๋๋ฌํ ์ ์์ต๋๋ค. ChromaOracle์ ์ด๋ฅผ ๋ช ํํ๊ฒ ๋ณด๊ณ ํ๋ฏ๋ก ํผ์ฆ์ด ๋จ์ง ์ด๋ ค์ด ๊ฒ์ด ์๋๋ผ ๋ถ๊ฐ๋ฅํจ์ ์ ์ ์์ต๋๋ค.
BFS ํด๋ ํญ์ ์ต์ ์ธ๊ฐ์?
๋ค. BFS๋ ์์ ์ ์ธก๋ฉด์์ ์ต๋จ ํด๋ฅผ ๋ณด์ฅํฉ๋๋ค. BFS๊ฐ ๋ฐํํ๋ ํด๋ณด๋ค ์ ์ ์์ ์ ํจํ ํด๋ ์กด์ฌํ์ง ์์ต๋๋ค. ์ด๋ ์๊ณ ๋ฆฌ์ฆ์ ์ํ์ ์์ฑ์ ๋๋ค.
๋ฏธ์คํฐ๋ฆฌ ๋ชจ๋๋ ์ด๋ค ์๊ฐ ์์ ํ์ง ์ด๋ป๊ฒ ์๋์?
๋ฏธ์คํฐ๋ฆฌ ๋ชจ๋๋ ์จ๊ฒจ์ง ์์ ๋ชจ๋ ๊ฐ๋ฅํ ํ ๋น์ ๋ํด ํผ์ฆ์ ํ์ด๋ด๊ณ ๋ชจ๋ ํด๋ฅผ ๋น๊ตํฉ๋๋ค. ์๊ฐ ๋ชจ๋ ๊ฐ๋ฅ์ฑ์ ์ต์ ํด์ ๋ํ๋ ๋๋ง ์์ ํ ๊ฒ์ผ๋ก ํ์๋ฉ๋๋ค. ์ด๋ ๊ทธ ์๊ฐ ์จ๊ฒจ์ง ์์ด ๋ฌด์์ด๋ ์ ํํจ์ ์๋ฏธํฉ๋๋ค.