Skip to content

Commit 4dc8185

Browse files
committed
Solve "Remove nth node from end of list" problem
1 parent d28b6f4 commit 4dc8185

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

โ€Žremove-nth-node-from-end-of-list/KwonNayeon.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,12 @@
1212
- ์ถ”๊ฐ€ ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ, ์ •ํ•ด์ง„ ๊ฐœ์ˆ˜์˜ ๋ณ€์ˆ˜๋งŒ ์‚ฌ์šฉ
1313
1414
ํ’€์ด๋ฐฉ๋ฒ•:
15-
1. fast ํฌ์ธํ„ฐ๋ฅผ n๋ฒˆ ์•ž์œผ๋กœ ์ด๋™
16-
2. base case: ๋งŒ์•ฝ fast๊ฐ€ None์ด๋ผ๋ฉด, ์ฒซ ๋ฒˆ์งธ ๋…ธ๋“œ๋ฅผ ์ œ๊ฑฐํ•จ
15+
- ํˆฌ ํฌ์ธํ„ฐ ๊ธฐ๋ฒ•: ๋‘ ํฌ์ธํ„ฐ ์‚ฌ์ด์˜ ๊ณ ์ •๋œ ๊ฐ„๊ฒฉ(n)์„ ์ด์šฉํ•˜์—ฌ fast๊ฐ€ ๋์— ๋„๋‹ฌํ–ˆ์„ ๋•Œ slow๊ฐ€ ์ •ํ™•ํ•œ ์œ„์น˜์— ์žˆ๋„๋ก ํ•จ
16+
1. fast ํฌ์ธํ„ฐ๋ฅผ n๋ฒˆ ์ด๋™์‹œ์ผœ slow์™€ n์นธ ๊ฐ„๊ฒฉ์„ ๋งŒ๋“ฆ
17+
2. Base case: fast๊ฐ€ None์ด๋ฉด ์ฒซ ๋ฒˆ์งธ ๋…ธ๋“œ๋ฅผ ์‚ญ์ œ (head.next ๋ฐ˜ํ™˜)
1718
3. fast.next๊ฐ€ None์ผ ๋•Œ๊นŒ์ง€ ๋‘ ํฌ์ธํ„ฐ๋ฅผ ํ•จ๊ป˜ ์ด๋™
18-
4. slow์˜ ๋‹ค์Œ ๋…ธ๋“œ๋ฅผ ์ œ๊ฑฐํ•จ (slow.next = slow.next.next๋กœ ์—ฐ๊ฒฐ์„ ๋Š์–ด๋ƒ„)
19+
-> ์ด๋•Œ slow๋Š” ์‚ญ์ œํ•  ๋…ธ๋“œ์˜ ๋ฐ”๋กœ ์•ž ์œ„์น˜์— ๋„๋‹ฌ
20+
4. slow.next = slow.next.next๋กœ ์‚ญ์ œํ•  ๋…ธ๋“œ๋ฅผ ๊ฑด๋„ˆ๋›ฐ๋„๋ก ์—ฐ๊ฒฐ ๋ณ€๊ฒฝ
1921
"""
2022
# Definition for singly-linked list.
2123
# class ListNode:

โ€Žsame-tree/KwonNayeon.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
ํ’€์ด๋ฐฉ๋ฒ•:
1313
1. DFS์™€ ์žฌ๊ท€๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋‘ ํŠธ๋ฆฌ๋ฅผ ๋™์‹œ์— ํƒ์ƒ‰
1414
2. base case:
15-
- p์™€ q๊ฐ€ ๋ชจ๋‘ None์ด๋ฉด โ†’ ๊ฐ™์€ ํŠธ๋ฆฌ
16-
- ๋‘˜ ์ค‘ ํ•˜๋‚˜๋งŒ None์ด๊ฑฐ๋‚˜ ๋…ธ๋“œ์˜ ๊ฐ’์ด ๋‹ค๋ฅด๋ฉด โ†’ ๋‹ค๋ฅธ ํŠธ๋ฆฌ
15+
- p์™€ q๊ฐ€ ๋ชจ๋‘ None์ผ ๋•Œ: ๊ฐ™์€ ํŠธ๋ฆฌ
16+
- ๋‘˜ ์ค‘ ํ•˜๋‚˜๋งŒ None์ด๊ฑฐ๋‚˜ ๋…ธ๋“œ์˜ ๊ฐ’์ด ๋‹ค๋ฅผ ๋•Œ: ๋‹ค๋ฅธ ํŠธ๋ฆฌ
1717
3. ์žฌ๊ท€๋กœ ์™ผ์ชฝ๊ณผ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒํŠธ๋ฆฌ๊ฐ€ ๋ชจ๋‘ ๊ฐ™์€์ง€ ํ™•์ธ
1818
"""
1919
# Definition for a binary tree node.
@@ -31,4 +31,3 @@ def isSameTree(self, p: Optional[TreeNode], q: Optional[TreeNode]) -> bool:
3131
return False
3232

3333
return self.isSameTree(p.left, q.left) and self.isSameTree(p.right, q.right)
34-

0 commit comments

Comments
ย (0)