File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ /**
2+ * Definition for singly-linked list.
3+ * function ListNode(val, next) {
4+ * this.val = (val===undefined ? 0 : val)
5+ * this.next = (next===undefined ? null : next)
6+ * }
7+ */
8+ /**
9+ * @param {ListNode } list1
10+ * @param {ListNode } list2
11+ * @return {ListNode }
12+ */
13+
14+ var mergeTwoLists = function ( list1 , list2 ) {
15+ let mergeHead = null ;
16+ let mergePointer = null ;
17+
18+ let head1 = list1 ;
19+ let head2 = list2 ;
20+
21+ const mergeNode = node => {
22+ const temp = node . next ;
23+ if ( ! mergeHead ) {
24+ mergeHead = node ;
25+ mergePointer = node ;
26+ } else {
27+ mergePointer . next = node ;
28+ mergePointer = mergePointer . next ;
29+ }
30+ return temp ;
31+ } ;
32+
33+ while ( head1 && head2 ) {
34+ if ( head1 . val <= head2 . val ) {
35+ head1 = mergeNode ( head1 ) ;
36+ } else {
37+ head2 = mergeNode ( head2 ) ;
38+ }
39+ }
40+
41+ if ( head1 ) mergeNode ( head1 ) ;
42+ if ( head2 ) mergeNode ( head2 ) ;
43+
44+ return mergeHead ;
45+ } ;
You can’t perform that action at this time.
0 commit comments