File tree 1 file changed +14
-14
lines changed
scripts/algorithms/O/Odd Even Linked List
1 file changed +14
-14
lines changed Original file line number Diff line number Diff line change
1
+ // Runtime: 57 ms (Top 84.32%) | Memory: 44.70 MB (Top 40.04%)
2
+
1
3
/**
2
4
* Definition for singly-linked list.
3
5
* function ListNode(val, next) {
10
12
* @return {ListNode }
11
13
*/
12
14
var oddEvenList = function ( head ) {
13
- if ( ! head || ! head . next ) return head ;
14
- let oddNode = head ;
15
- const evenHead = head . next ;
16
- let evenNode = head . next ;
17
15
18
- while ( evenNode ?. next ) {
19
- oddNode . next = evenNode . next ;
20
- oddNode = oddNode . next ;
21
- evenNode . next = oddNode . next ;
22
- evenNode = evenNode . next ;
23
- }
24
-
25
- oddNode . next = evenHead ;
26
-
27
- return head ;
16
+ if ( ! head || ! head . next ) return head ;
17
+
18
+ let odd = head , even = head . next , firstEven = even ;
19
+ while ( even && even . next ) {
20
+ odd . next = even . next ;
21
+ odd = odd . next ;
22
+ even . next = odd . next ;
23
+ even = even . next ;
24
+ }
25
+ odd . next = firstEven ;
26
+ return head ;
27
+
28
28
} ;
You can’t perform that action at this time.
0 commit comments