๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ฆฌํŠธ์ฝ”๋“œ2

[LC150] ๋ฆฌํŠธ์ฝ”๋“œ Top Interview 150 ์‹œ์ž‘ 99ํด๋Ÿฝ ์ฝ”ํ…Œ ์Šคํ„ฐ๋””๊ฐ€ ๋๋‚˜๊ณ  ์ƒˆ๋กญ๊ฒŒ Leetcode top interview 150๊ฐœ ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ์Šคํ„ฐ๋””๋ฅผ ์‹œ์ž‘ํ–ˆ๋‹ค. ํ•œ ์ฃผ์— 5๋ฌธ์ œ์”ฉ ํ’€๋ฉด ๋œ๋‹ค. ๋ฆฌํŠธ์ฝ”๋“œ 150 ๋ฌธ์ œ ๋ฆฌ์ŠคํŠธ๋Š” Array/String, Two Pointers, Sliding Window ์ด๋Ÿฐ์‹์œผ๋กœ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„๋กœ ๋ฌธ์ œ๊ฐ€ ๋‚˜๋‰˜์–ด ์žˆ์–ด์„œ ์ฃผ์ œ๋ณ„๋กœ ํ•™์Šตํ•˜๊ธฐ ์ข‹๋‹ค.     ์ด๋ฒˆ ์Šคํ„ฐ๋””์˜ ๋ชฉํ‘œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1. ์ตœ๋Œ€ํ•œ ํ˜ผ์ž ํ’€๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ธฐ - ํ‘ธ๋Š”๋ฐ ๊ฑธ๋ฆฐ ์‹œ์ž‘ ๊ธฐ๋ก- ์–ด๋–ป๊ฒŒ ํ’€์—ˆ๋Š”์ง€ ๊ธฐ๋ก2. ์Šค์Šค๋กœ ํ’€์ง€ ๋ชป ํ•œ ๋ฌธ์ œ๋Š” ๋ณต์Šตํ•˜๊ธฐ  150๋ฌธ์ œ๋Š” ์ผ์ฃผ์ผ์— 5๊ฐœ์”ฉ ์ด 30์ฃผ -> ์•ฝ 7๊ฐœ์›” ๋™์•ˆ ์ฒœ์ฒœํžˆ ํ•˜์ง€๋งŒ ๊พธ์ค€ํžˆ ํ•  ๊ณ„ํš์ด๋‹ค. ๋ฆฌํŠธ์ฝ”๋“œ์—์„œ๋Š” 2๋…„ ์ „๋ถ€ํ„ฐ ๋ฌธ์ œ๋ฅผ ๊ณ„์† ํ’€์—ˆ์–ด์„œ ์—ฌ๊ธฐ ๋ฆฌ์ŠคํŠธ์— ์žˆ๋Š” ๋ฌธ์ œ๋“ค ์ค‘ 1/2 ์ •๋„๋Š” ๋‹ค ํ‘ผ ๊ฒƒ ๊ฐ™์€๋ฐ ๋‹ค์‹œ ํ’€์–ด.. 2025. 3. 11.
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.