1. 程式人生 > >328. Odd Even Linked List(連結串列)

328. Odd Even Linked List(連結串列)

https://leetcode.com/problems/odd-even-linked-list/description/

題目:將連結串列奇數位上的節點放到偶數位上的節點前面。

思路:分別構造兩條連結串列:奇數位的連結串列,偶數位的連結串列,最後一個奇數位節點的下一個節點為偶數位節點的開頭
空間複雜度O(1),時間複雜度O(n)

class Solution {
public:
    ListNode* oddEvenList(ListNode* head) {
        ListNode *odd , *even, *even_head;
        if(!head)  return
head; odd = head; even = head->next; even_head = even; while( odd && even && even->next){ odd->next = even->next; even->next = even->next->next; odd = odd->next; even = even->next
; } odd->next = even_head; return head; } };