์ฝ๋ฉํ ์คํธ29 3. Linked List ๋งํฌ๋ ๋ฆฌ์คํธ๋? ํฌ์ธํฐ๋ก ์ฐ๊ฒฐ๋ ๋ ธ๋๋ค์ ์ปฌ๋ ์ ์ด๋ผ๊ณ ํ ์ ์๊ณ , ์คํ, ํ, ํด์ ํ ์ด๋ธ์ ๊ตฌํํ๋๋ฐ ์ฌ์ฉ๋ ์ ์๋ค. ์์ ์ง์ ์ ๋ ธ๋๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์ญ์ ํ๋ ๊ฒ์ O(1) ์์ ์๊ฐ์ด ์์๋๋ค. ๋ ธ๋ ํด๋์ค ์ฝ๋ ์์ public class Node { int val; Node next; ListNode() {} Node(int val) { this.val = val; } Node(int val, Node next) { this.val = val; this.next = next; } } ์ฝ๋ฉํ ์คํธ ํ ๐๏ธ Recursion๋ ์์์ผ ํ๊ณ ๊ทธ ์ด๋ ต๋ค๋ ํฌ์ธํฐ๋ฅผ ํ์ฉํด์ ๋ฌธ์ ๋ฅผ ํ์ด์ผ ํ๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฆผ์ ๋ง์ด ๊ทธ๋ ค๋ณด๋ฉด์ ์ฝ๋๋ฅผ ๋ฐ๋ผ๊ฐ ๋ณด๋ ๊ฒ์ด ์ค์ํ๋ค. ๋ง์ฝ Easy ๋ฌธ์ ๋ ๋๋ฌด ์ด๋ ต๊ฒ ๋๊ปด์ง๋ค๋ฉด .. 2024. 3. 9. 2. Arrays ๋ฐฐ์ด์ด๋? ๊ฐ์ ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ฐ์๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์์นํด ์ธ๋ฑ์ค๋ก ๊ฐ์ ๊ฐ์ ธ์ฌ ์ ์๋ค. ๋ฐฐ์ด์ ํฌ๊ธฐ๋ ์์ฑํ ๋ ์ ํด์ง๋ฉฐ ํ ๋ฒ ์์ฑํ๋ฉด ์ฌ์ด์ฆ๋ ๊ณ ์ ์ด๊ธฐ ๋๋ฌธ์ ๋ณ๊ฒฝํ ์ ์๋ค. ๋ง์ฝ ๋์ ๋ฐฐ์ด์ด ํ์ํ ๊ฒฝ์ฐ, ์๋ฐ์์๋ ArrayList๋ฅผ ์ฌ์ฉํ ์ ์๋ค(c++์์๋ vector). ์ฝ๋ฉํ ์คํธ ํ ๐๏ธ ๋ฐฐ์ด์ ๋์ค์ ์ด๋ ค์ด ๋ฌธ์ ๋ฅผ ํ ๋ ๊ธฐ๋ณธ์ผ๋ก ์๊ณ ์์ด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋ฐฐ์ด ๊ด๋ จ ์ฝ๋๋ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ์์ฑํ ์ ์์ ๋งํผ ์ต์ํด์ ธ์ผ ํ๋ค. ๋ฐฐ์ด๊ด๋ จ ๋ฌธ์ ๋ ์ข ๋ฅ๋ ๋ค์ํ๊ณ ๋์ด๋๊ฐ ์ฒ์ ์ ํ๋ฉด ์๊ฐ๋ณด๋ค ์ด๋ ค์ด ๋ฌธ์ ๋ค์ด ๋ง๋ค. prefix sum, sliding window, two pointer ๊ฐ์ ๊ฐ๋ ์ ๋ฐฐ์ด ๋ฌธ์ ๋ฅผ ํ ๋ ์์๋๋ฉด ์ข๊ณ , HashMap๋ ๋ง์ด ํ์ฉํ๊ธฐ ๋๋ฌธ์ ํด์๋งต์ ๋ฉ์๋๋ฅผ.. 2024. 3. 2. A Journey to Algorithm Mastery - 3 (LeetCode) ๐ทSolved 100 LeetCode Problems ๊ธฐ์กด์๋ ํ๋ก๊ทธ๋๋จธ์ค๋ ๋ฐฑ์ค์์ ๋ฌธ์ ๋ฅผ ํ์๋๋ฐ ์ง๊ธ์ LeetCode์์๋ง ๋ฌธ์ ๋ฅผ ํ๊ณ ์๋ค. ๋ฆฌํธ์ฝ๋๊ฐ ํ์คํ UI๋ ์๋์ด ์๊ณ solution ๋ถ๋ถ๋ ์ฐธ๊ณ ํ๊ธฐ ์ฝ๊ณ ํ๋ฆฐ ํ ์คํธ ์ผ์ด์ค๋ ๋ณผ ์ ์์ด์ ๋ ํจ์จ์ ์ผ๋ก ๊ณต๋ถํ ์ ์๋ ๊ฒ ๊ฐ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฆฌํธ์ฝ๋๋ ์ฐธ๊ณ ํ ๋งํ ์ ํ๋ธ ์์๋ ๋ง๊ณ ์ฃผ์ ๋ณ๋ก ์ฐพ์์ ํ์ด๋ณผ ์๋ ์์ด์ ์ฒ์๋ถํฐ ๋ฆฌํธ์ฝ๋๋ก ํ์ผ๋ฉด ๋ ์ข์์ ๊ฒ ๊ฐ๋ค. ์์ง ๊ธฐ์ ์ฝ๋ฉํ ์คํธ์ ๋์ ํ๊ธฐ์๋ ์ค๋ ฅ์ด ๋ถ์กฑํ์ง๋ง ๊ทธ๋๋ ์ด์ ๋ณด๋ค๋ ์กฐ๊ธ ๋์์ก๊ณ ๋ฆฌํธ์ฝ๋ ๋ฌธ์ ๋ 100๊ฐ๋ ํ์๋ค. ํ์ฌ ๋ด๊ฐ ๊ณต๋ถํ๊ณ ์๋ ๋ฐฉ๋ฒ์ 1๏ธโฃ NeetCode.io ๋ก๋๋งต ์ฐธ๊ณ ์ฃผ์ ๋ณ๋ก ๊ด๋ จ ๋ฌธ์ ๋ค์ด ๋์์๊ณ ๋ฌธ์ ๋ง๋ค ์ ํ๋ธ ์์์ด ์์ด์ ๋ชจ๋ฅด๋ ๋ถ๋ถ์ ๋นจ๋ฆฌ .. 2024. 1. 13. A Journey to Algorithm Mastery - 2 (PCCP ๋ถํฉ๊ฒฉ) ๐ทํ๋ก๊ทธ๋๋จธ์ค 2023 Dev-Matching A Journey to Algorithm Mastery - 1์ ์์ฑํ ๋ค๋ก ๋๋ฆ ๊พธ์คํ ๋ฌธ์ ๋ฅผ ํ์ด๊ฐ๋ฉด์ ์ค๊ฐ ์ค๊ฐ ์๊ณ ๋ฆฌ์ฆ/์๋ฃ๊ตฌ์กฐ๋ ๊ณต๋ถํ๋ฉด์ ์ค๋ ฅ์ด ๋์ด๊ฐ๋ค๊ณ ์๊ฐํ๋ค. ํ๋ก๊ทธ๋๋จธ์ค์์ 0๋ ๋ฒจ์ธ '์ฝ๋ฉ ๊ธฐ์ด ํธ๋ ์ด๋' ํ๊ณ '์ฝ๋ฉํ ์คํธ ์ ๋ฌธ' ์์ฃผ๋ก ๋ฌธ์ ๋ฅผ ํ์๋ค. ์์ ์ ๋นํด ์์๋ ๋ง์ด ์ค๋ฅด๊ณ ๋ฌธ์ ๋ 200๊ฐ ๋๊ฒ ํ๊ณ ์์ฆ์๋ ๋ฐฑํธ๋ํน, ์ฌ๊ท ๊ฐ์ ์๊ณ ๋ฆฌ์ฆ ๊ณต๋ถ๋ ๊ฐ์ด ํ๊ณ ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ค๋ PCCP, ์ฝ๋ฉ์ญ๋์ธ์ฆ ์ํ์ ๋ดค๋ค. 2์๊ฐ ๋์ ์ด 4๋ฌธ์ ๊ฐ ์ฃผ์ด์ก๊ณ ๋๋ for ๋ฌธ๊ณผ if ๋ฌธ์ ํ์ฉํด์ ํ์ ์๋ ๊ฐ์ฅ ์ฌ์ด ๋ฌธ์ ๋ฅผ ์ฝ 1์๊ฐ ์ ๋ ๊ฑธ๋ ค์ ํ๊ณ ๋๋จธ์ง ๋ฌธ์ ๋ฅผ ํ์ด๋ณด๋ ค๊ณ ํ์ผ๋ ๋์ ํ ํ์ด๋ฐฉ๋ฒ์ด ์๊ฐ์ด ์๋์ 4๋ฌธ์ ์ค 1๋ฌธ์ ๋ง ํ์ด์.. 2023. 9. 10. A Journey to Algorithm Mastery - 1 (์ค1 ์ํ) ๐ท ์๊ณ ๋ฆฌ์ฆ ๊ณต๋ถํ๋๋ฐ ์คํ๊ต ์ํ์ด ๋์์ด ๋๋๊ฐ? ๋ง์ ํ์ฌ๋ค์ด 1์ฐจ ๊ด๋ฌธ์ผ๋ก ์ฝ๋ฉํ ์คํธ๋ฅผ ๋ณด๊ธฐ๋๋ฌธ์ ์ฝํ ๋ฅผ ํต๊ณผํ์ง ๋ชปํ๋ฉด ๋ฉด์ ์ ๊ธฐํ์กฐ์ฐจ ์์ ์๋ ์๊ณ ์ข์ ํ์ฌ๋ค์ ๊ฑฐ์ ์ฝํ ๊ฐ ํ์๋ค. ๊ทธ๋์ ๊ตญ๋น๊ต์ก์ด ๋๋ ๋์ฏค ๋ค๋ค ์ฝ๋ฉํ ์คํธ ์ค๋น๋ฅผ ํ๊ธฐ ์์ํ๊ณ , ๋ ์ญ์๋ 2022๋ 12์์ ํ๋ก๊ทธ๋๋จธ์ค์์ ์ฝ๋ฉ ๋ฌธ์ ๋ฅผ ํ๊ธฐ ์์ํ๋ค. ๊ฐ์ฌ๋์ด ์ฝํ ์ธ์ด๋ก ํ์ด์ฌ์ ์ถ์ฒํด์ฃผ์ ์ ์ฐ์ ํ์ด์ฌ์ผ๋ก ๋ฌธ์ ๋ฅผ ํ์๋ค. ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ์ ๊ฒฝ์ฐ ํ๋ฃจ์ 4๋ฌธ์ ์ฉ ๋งค์ผ ํ๋ฉด 25์ผ, ์ฝ ํ๋ฌ๋ง์ ๋ค ํ ์ ์๋ ๋ถ๋์ด์ฌ์ ๊ทธ๋ ๊ฒ ์ด๋ ต์ง ์์ ๊ฑฐ๋ผ ์๊ฐํ๋๋ฐ Day2 ๋ถ์์ ๋ง์ ๋ถํฐ ํ์๊ฐ ์์๋ค... ๋ฌธ์ ์์ ๋ ๋ถ์๋ฅผ ๋ํ ๊ฐ์ ๊ธฐ์ฝ ๋ถ์๋ก ๋ํ๋์ ๋ ๋ถ์์ ๋ถ๋ชจ๋ฅผ ์์๋๋ก ๋ด์ ๋ฐฐ์ด์ ๋ฆฌํดํ๋ผ๊ณ ํ๋๋ฐ, ๊ธฐ.. 2023. 6. 4. ์ด์ 1 2 3 4 5 ๋ค์