Skip to content

Commit 2097b76

Browse files
committed
🟢 Solve problem 23
1 parent 297ea52 commit 2097b76

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

‎typescript/mergeTwoLists.ts

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
class ListNode {
2+
val: number
3+
next: ListNode | null
4+
constructor(val?: number, next?: ListNode | null) {
5+
this.val = (val === undefined ? 0 : val)
6+
this.next = (next === undefined ? null : next)
7+
}
8+
}
9+
10+
function mergeTwoLists(list1: ListNode | null, list2: ListNode | null): ListNode | null {
11+
if (!list1) return list2;
12+
if (!list2) return list1;
13+
14+
const tmp = new ListNode();
15+
let current = tmp;
16+
17+
while (list1 && list2) {
18+
if (list1.val <= list2.val) {
19+
current.next = list1;
20+
list1 = list1.next;
21+
} else {
22+
current.next = list2;
23+
list2 = list2.next;
24+
}
25+
current = current.next;
26+
}
27+
28+
current.next = list1 || list2;
29+
30+
return tmp.next;
31+
}

0 commit comments

Comments
 (0)