Skip to content

Commit 4169cf9

Browse files
authored
Merge pull request #2547 from reeseo3o/main
[reeseo3o] WEEK 07 Solutions
2 parents 025592b + af7c5dc commit 4169cf9

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// Time Complexity: O(n) - ๋…ธ๋“œ๋ฅผ ํ•œ ๋ฒˆ๋งŒ ์ˆœํšŒ
2+
// Space Complexity: O(1) - ๋ณ€์ˆ˜ 3๊ฐœ(prev, current, next)๋งŒ ์‚ฌ์šฉ
3+
const reverseList = (head) => {
4+
let prev = null;
5+
let current = head;
6+
7+
while (current !== null) {
8+
const next = current.next;
9+
current.next = prev;
10+
prev = current;
11+
current = next;
12+
}
13+
14+
return prev;
15+
};
16+
17+
// Time Complexity: O(n) - ๋…ธ๋“œ ์ˆ˜๋งŒํผ ์žฌ๊ท€ ํ˜ธ์ถœ
18+
// Space Complexity: O(n) - ์ฝœ ์Šคํƒ์ด ๋…ธ๋“œ ์ˆ˜๋งŒํผ ์Œ“์ž„
19+
const reverseListRecursive = (head) => {
20+
if (head === null || head.next === null) return head;
21+
22+
const newHead = reverseListRecursive(head.next);
23+
24+
head.next.next = head;
25+
head.next = null;
26+
27+
return newHead;
28+
};

0 commit comments

Comments
ย (0)