File tree Expand file tree Collapse file tree 1 file changed +53
-0
lines changed Expand file tree Collapse file tree 1 file changed +53
-0
lines changed Original file line number Diff line number Diff line change
1
+ /*
2
+ * @Author : Chacha
3
+ * @Date : 2022-05-10 21:46:56
4
+ * @Last Modified by: Chacha
5
+ * @Last Modified time: 2022-05-10 21:49:27
6
+ */
7
+ /**
8
+ * 奇偶链表
9
+ *
10
+ */
11
+ class ListNode {
12
+ constructor ( val , next ) {
13
+ this . val = val === undefined ? 0 : val ;
14
+ this . next = next === undefined ? null : next ;
15
+ }
16
+ }
17
+
18
+ const oddEvenList = function ( head ) {
19
+ if ( head === null ) {
20
+ return null ;
21
+ }
22
+
23
+ if ( head . next === null ) {
24
+ return head ;
25
+ }
26
+
27
+ let odd = head ,
28
+ even = head . next ,
29
+ evenHead = head . next ;
30
+
31
+ // console.log(evenHead);
32
+
33
+ while ( even !== null && even . next !== null ) {
34
+ odd . next = odd . next . next ;
35
+ odd = odd . next ;
36
+ even . next = even . next . next ;
37
+ even = even . next ;
38
+ }
39
+
40
+ odd . next = evenHead ;
41
+
42
+ // console.log(evenHead, head.next);
43
+
44
+ return head ;
45
+ } ;
46
+
47
+ let node5 = new ListNode ( 5 ) ;
48
+ let node4 = new ListNode ( 4 , node5 ) ;
49
+ let node3 = new ListNode ( 3 , node4 ) ;
50
+ let node2 = new ListNode ( 2 , node3 ) ;
51
+ let node1 = new ListNode ( 1 , node2 ) ;
52
+
53
+ console . log ( oddEvenList ( node1 ) ) ;
You can’t perform that action at this time.
0 commit comments