Section4 Unit1 [์๋ฃ๊ตฌ์กฐ/์๊ณ ๋ฆฌ์ฆ] ๊ธฐ์ด - Tree, Graph
๐ Chapter3. Tree์ Graph
์ง๋ ์ฑํฐ์ ๋ง์ฐฌ๊ฐ์ง๋ก Tree์ Graph๋ ๊ฐ์ธ ๋ ธ์ ์ ์ฐ์ ์ ๋ฆฌ๋ง ํด๋์๋ค. ๋ธ๋ก๊ทธ์๋ ์๋ฃ๊ตฌ์กฐ์ ๋ํด ์ข ๋ ๊ด์ฌ์ด ์๊ฒจ์ ๊ณต๋ถ๋ฅผ ํ๊ฒ ๋๋ฉด ์ ๋ฆฌ๋ฅผ ํด์ ๊ธฐ๋กํด๋ณผ๊น ์ถ์ด์ ์ด๋ฒ์๋ ์ญ์ ๊ฐ๋ ๋ง ์ ์ด๋ณผ๊น ํ๋ค. ํนํ ์ด๋ฒ์๋ ๊ทธ๋ํ์ ์ฌ๋ฌ ์ข ๋ฅ์ ํํ๋ฐฉ์ ๋ฑ์ด ๋๋ฌด ๋ง์์ ํท๊ฐ๋ฆฌ๊ณ ์ด๋ ค์ ๋ ๊ฒ ๊ฐ๋ค.
๊ทธ๋ฆฌ๊ณ ๊ทธ๋ํ๋ฅผ ํ์ํ๋ ๋ฐฉ๋ฒ ์ค ๋ํ์ ์ธ ๋ ๊ฐ์ง์ธ BFS์ DFS๋ ์ฝ์ง ์์๋ค. ์ฌ๋ฌ๋ฒ ๊ธ์ ์ฝ๋ค๋ณด๋ ์ดํด๋ ๋์๋๋ฐ, ์ด๊ฑธ ๋ด๊ฐ ์์ฉํ ์ ์์๊น?
Tree๋ ๊ทธ๋ํ์ ์ฌ๋ฌ ๊ตฌ์กฐ ์ค ๋จ๋ฐฉํฅ ๊ทธ๋ํ์ ํ ๊ตฌ์กฐ๋ก, ํ๋์ ๋ฟ๋ฆฌ๋ก๋ถํฐ ๊ฐ์ง๊ฐ ์ฌ๋ฐฉ์ผ๋ก ๋ป์ ํํ๊ฐ ๋๋ฌด์ ๋ฎ์๋ค๊ณ ํด์ ํธ๋ฆฌ ๊ตฌ์กฐ๋ผ๊ณ ๋ถ๋ฅธ๋ค.
• ๋ฐ์ดํฐ๋ฅผ ์์ฐจ์ ์ผ๋ก ๋์ด์ํจ ์ ํ ๊ตฌ์กฐ๊ฐ ์๋๋ผ, ํ๋์ ๋ฐ์ดํฐ ์๋์ ์ฌ๋ฌ ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ ์ ์๋ ๋น์ ํ ๊ตฌ์กฐ์ด๋ค.
• ํธ๋ฆฌ ๊ตฌ์กฐ๋ ๋ฐ์ดํฐ๊ฐ ๋ฐ๋ก ์๋์ ์๋ ํ๋ ์ด์์ ๋ฐ์ดํฐ์ ํ ๊ฐ์ ๊ฒฝ๋ก์ ํ๋์ ๋ฐฉํฅ์ผ๋ก๋ง ์ฐ๊ฒฐ๋ ๊ณ์ธต์ ์๋ฃ๊ตฌ์กฐ์ด๋ค.
→ ์์ ๋ ธ๋์์ ์ถ๋ฐํด ๋ค๋ฅธ ๋ ธ๋๋ฅผ ๊ฑฐ์ณ ์์ ๋ ธ๋๋ก ๋์์ฌ ์ ์๋ค๋ฉด ์ฌ์ดํด์ด ์กด์ฌํ๋ค๊ณ ํํํ๋๋ฐ, ํธ๋ฆฌ ๊ตฌ์กฐ๋ ๊ณ์ธต์ ์ผ๋ก ํํ์ด ๋๊ธฐ ๋๋ฌธ์ ์ฌ์ดํด(cycle)์ด ์๋ค.
• ํธ๋ฆฌ๋ ์ฌ์ดํด(cycle)์ด ์๋ ํ๋์ ์ฐ๊ฒฐ ๊ทธ๋ํ(Connected Graph)๋ผ๊ณ ํ ์ ์๋ค.
Graph๋ ์ฌ๋ฌ ๊ฐ์ ์ ์ด ์๋ก ๋ณต์กํ๊ฒ ์ฐ๊ฒฐ๋ ๊ด๊ณ๋ฅผ ํํํ ์๋ฃ๊ตฌ์กฐ์ด๋ค.
• ์ง์ ์ ์ธ ๊ด๊ณ๊ฐ ์๋ ๊ฒฝ์ฐ ๋ ์ ์ฌ์ด๋ฅผ ์ด์ด์ฃผ๋ ์ ์ด ์๋ค.
• ๊ฐ์ ์ ์ธ ๊ด๊ณ๋ผ๋ฉด ๋ช ๊ฐ์ ์ ๊ณผ ์ ์ ๊ฑธ์ณ ์ด์ด์ง๋ค.
• ํ๋์ ์ ์ ๊ทธ๋ํ์์๋ ์ ์ (vertex)์ด๋ผ๊ณ ํํํ๊ณ , ํ๋์ ์ ์ ๊ฐ์ (edge)์ด๋ผ๊ณ ํ๋ค.
โ๏ธ ์ฐ์ต๋ฌธ์ .
์ด๋ฒ ์ฐ์ต๋ฌธ์ ๋ Tree์ Graph์ ๊ด๋ จ๋ 7๊ฐ์ ๋ฌธ์ ์๋ค. ์ด๋ฒ์๋ ์ง์ง ํ๋๋ ์ ๋๋ก ๋ชปํ๊ณ , ์๋์๋ฒ๋ ธ๋ค.
๋ด๊ฐ ์ด ๊ธ์ ์์ ํ ๋ ์ด ์ฌ์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง, ์ด ๊ธ์ด ์์ ๋๋ค๋ฉด ๊ทธ๊ฑด ์๋ง ์ฐ์ต๋ฌธ์ ๋ฅผ ํ๊ณ ๊ทธ ํ์ด๋ฅผ ์์ฑํ๊ธฐ ์ํด์์ผ ๊ฒ์ด๋ค...
๐ ์ค๋์ ํ๊ณ
์ค๋๋ ์ง๋๋ฒ์ฒ๋ผ ์ด๋ก ์ ์ดํด๊ฐ ๋์ง๋ง, ๋ง์ Javascript๋ก ์๋ฃ๊ตฌ์กฐ์ tree์ graph๋ฅผ ๊ตฌํํ๋ ค๋ ๋๋ฌด ์ด๋ ค์ ๋ค. ๊ฒฐ๊ตญ ์ดํด์๋๋ ์ฝ๋๋ฅผ ๋ค๋กํ๊ณ ์ด๋ก ์ผ๋ก ๋์์๋ค. ์ด๋ก ์ ๋ค์ ํ ๋ฒ ์ ๋ฆฌํด๋ณด๊ณ , ์ฝ๋๋ก ๊ตฌํํ๋๊ฑด ๋จธ๋ฆฌ์ ํด์์ ์ข ์ฃผ๊ณ ๋์ค์ ๋ค์ ํด๋ด์ผ๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค. ๋๋ฌด ์ด๊ฒ๋ง ๋ถ์ก๊ณ ์๊ธฐ์๋ ๊ณต๋ถํ ๋ด์ฉ์ด ๋๋ฌด ๋ง์… ๐จ ๊ทธ์น…? (๋ ํผ๋ฐ์ค ์ฝ๋๋ฅผ ๋ด๋, ํด์ค ๊ฐ์๋ฅผ ๋ค์ด๋ ๋ชจ๋ฅด๊ฒ ์ผ๋… ์ข ๋๊ฒจ๋ด๋ ๋๊ฒ ์ง…๐ญ)
๊ธ์๋ถํฐ ์๋ฃ๊ตฌ์กฐ ๊ณต๋ถ๋ฅผ ํ๋ค๊ณ ๋ฆฌ์กํธ๋ ๊ฑฐ์ ๋ณด์ง๋ ๋ชปํ๋๋ฐ, ์ด๋ฐ ์ด๋ก ํ์ต์ ๋น์ฅ ๋์ ๋ณด์ด๋ ๊ฒฐ๊ณผ๋ฌผ์ด ๋จ๋ ๊ณต๋ถ๊ฐ ์๋๋ค ๋ณด๋ ์ฌ์ค ์ ๋ง ์ง๊ฒจ์ ๊ณ , ํ๊ธฐ๋ ์ซ์๋ค. ์ด๊ฑธ ์ง๊ธ ํ๊ณ ์๋๊ฒ ๋ง๋๊ฑด๊ฐ ์ถ๊ธฐ๋ ํ๊ณ . ์ ํ๊ณ ์ถ์๋ฐ, ์ ๋์ง๋ ์๊ณ , ์ ํ์ง๋ ๋ชปํ๊ฒ ์ด์ ๊ทธ๊ฒ๋ ์ง์ค๋์ ์ํฅ์ ์ค ๊ฒ ๊ฐ๋ค.
์ฃผ๋ง๋ถํฐ ์ค๋๊น์ง ๊ณต๋ถ๋ ์์ ๋งํ๋ค.. ํด, ๋งํ ๊ณต๋ถ๋ ์ค๋๊น์ง๋ง.. ๋ผ์ ๋ค์ ์คํ ์ค๋ฅผ ์ฐพ์ ์ ์์๊น.
'Frontend Dev > ๐ฅ ์ฝ๋์คํ ์ด์ธ FE ๋ถํธ์บ ํ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Section4 Unit3 [React] ์ฌํ - Virtual DOM๊ณผ React Hooks (0) | 2023.07.18 |
---|---|
Section4 Unit2 [์๋ก ํ๋ก์ ํธ] COZ Shopping (0) | 2023.07.11 |
Section4 Unit1 [์๋ฃ๊ตฌ์กฐ/์๊ณ ๋ฆฌ์ฆ] ๊ธฐ์ด - Stack, Queue (0) | 2023.07.07 |
Section3 ํ๊ณ , ์ผ์ฃผ์ผ ๊ฐ์๋ ํ ๋ฌ (1) | 2023.07.06 |
Section3 Unit7 [Backend] ์ธ์ฆ / ๋ณด์ - Cookie/Session (0) | 2023.06.30 |