๐ก ๋๋ถ๋ถ์ ๋ด์ฉ์ Do it! ์๊ณ ๋ฆฌ์ฆ ์ฝ๋ฉํ ์คํธ with JAVA ๊ฐ์๋ฅผ ์ฐธ๊ณ ํ์ฌ ์ ๋ฆฌํ์์ต๋๋ค.
๋ฐฐ์ด
๋ฐฐ์ด์ ์ฐ์ ๊ณต๊ฐ์ ๊ฐ์ด ์ฑ์์ ธ ์๋ ํํ์ ์๋ฃ๊ตฌ์กฐ์ด๋ค.
๋ฐฐ์ด์ ํน์ง
- ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ๋ฐ๋ก ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค.
- ์๋ก์ด ๊ฐ์ ์ฝ์
ํ๊ฑฐ๋ ํน์ ์ธ๋ฑ์ค์ ์๋ ๊ฐ์ ์ญ์ ํ๊ธฐ ์ด๋ ต๋ค. (์ฐ์ ๊ณต๊ฐ์ ๊ฐ์ด ์ฑ์์ ธ ์๋ ํํ์ด๊ธฐ ๋๋ฌธ)
- ์ฝ์ ๋ฐ ์ญ์ ๋ฅผ ์ํ๋ ์ธ๋ฑ์ค ์ฃผ๋ณ์ ์๋ ๊ฐ์ ์ด๋์์ผ์ผ ํ๋ค.
- ๋ฐฐ์ด์ ํฌ๊ธฐ๋ ์ ์ธ ํ ๋ ์ง์ ํด์ผ ํ๊ณ , ํ๋ฒ ์ ์ธํ๋ฉด ํฌ๊ธฐ๋ฅผ ๋๋ฆฌ๊ฑฐ๋ ์ค์ผ ์ ์๋ค.
๋ฆฌ์คํธ
๋ฆฌ์คํธ๋ ๊ฐ๊ณผ ํฌ์ธํฐ๋ฅผ ๋ฌถ์ ๋ ธ๋๋ฅผ ํฌ์ธํฐ๋ก ์ฐ๊ฒฐํ ์๋ฃ๊ตฌ์กฐ์ด๋ค.
๋ฆฌ์คํธ์ ํน์ง
- ์ธ๋ฑ์ค๊ฐ ์๋ค. ๋ฐ๋ผ์ ๊ฐ์ ์ ๊ทผํ๋ ค๋ฉด Head ํฌ์ธํฐ๋ถํฐ ์์๋๋ก ์ ๊ทผํด์ผ ํ๋ค. → ๊ฐ์ ์ ๊ทผํ๋ ์๋๊ฐ ๋๋ฆฌ๋ค.
- ํฌ์ธํฐ๋ก ์ฐ๊ฒฐ๋์ด ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ๊ฑฐ๋ ์ญ์ ํ๋ ์๋๊ฐ ๋น ๋ฅด๋ค.
- ์ ์ธํ ๋ ํฌ๊ธฐ๋ฅผ ์ง์ ํ์ง ์์๋ ๋๋ค. ํฌ๊ธฐ๊ฐ ์ ํด์ ธ ์์ง ์๊ณ ๊ฐ๋ณ์ ์ด๋ค!
- ํฌ์ธํฐ๋ฅผ ์ ์ฅํ ๊ณต๊ฐ์ด ํ์ํ๋ฏ๋ก ๋ฐฐ์ด๋ณด๋ค ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ง์ด ์ฐจ์งํ๋ค.
๋ฐฐ์ด vs. ๋ฆฌ์คํธ
โ ์ฝ๋ฉํ ์คํธ์์, ๋ ์๋ฃ๊ตฌ์กฐ ์ค์์ ์ด๋ค ๊ฒ์ ์ ํํด์ผ ์ ์ ํ ๊น?
- ํฌ๊ธฐ๊ฐ ๊ณ ์ ๋์ด ์์ ๋
- ์ ๊ทผ ํ์๊ฐ ๋ง์ ์๊ณ ๋ฆฌ์ฆ์ผ ๋
→ ๋ฐฐ์ด ์ฌ์ฉ!
- ํฌ๊ธฐ๊ฐ ๋ณํ ๋, ์ ์ธ ์ ํฌ๊ธฐ๋ฅผ ๋ชจ๋ฅผ ๋
- ์ฝ์ ๊ณผ ์ญ์ ๊ฐ ๋ง์ ๋
→ ๋ฆฌ์คํธ(ArrayList, LinkedList) ์ฌ์ฉ!
Reference
https://velog.io/@minjung0/Do-it-์๊ณ ๋ฆฌ์ฆ-์ฝ๋ฉํ ์คํธ-์๋ฐ-์ ๋ฆฌ๋ณธ-๋ฐฐ์ด๊ณผ-๋ฆฌ์คํธ
'Java > ์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์๊ณ ๋ฆฌ์ฆ] DFS (๊น์ด ์ฐ์ ํ์) ์ BFS (๋๋น ์ฐ์ ํ์), ๊ทธ๋ฆฌ๊ณ Binary Search(์ด์ง ํ์) (1) | 2024.01.30 |
---|---|
[์๊ณ ๋ฆฌ์ฆ] ๊ตฌ๊ฐ ํฉ (0) | 2024.01.29 |
[์๊ณ ๋ฆฌ์ฆ] ์๊ฐ ๋ณต์ก๋ (1) | 2024.01.29 |