https://leetcode.com/problems/odd-even-linked-list/
//20 ms 8.4 MB/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*///CAUTION: it is talking about the node number and not the value in the nodesclass Solution {public:ListNode* oddEvenList(ListNode* head) {if(!head || !head->next) return head;ListNode* odd = head;ListNode* even = head->next;ListNode* head2 = even;while(odd->next && even->next){odd->next = even->next;odd = odd->next;even->next = odd->next;even = even->next;}odd->next = head2;return head;}};
