LeetCode Algorithm 328. 奇偶链表

Posted Alex_996

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode Algorithm 328. 奇偶链表相关的知识,希望对你有一定的参考价值。

题目链接:328. 奇偶链表

Ideas

算法:遍历
数据结构:链表
思路:话不多说,代码十分通俗易懂,好的代码都不需要注释。

Code

C++

class Solution 
public:
    ListNode* oddEvenList(ListNode* head) 
        if (head == nullptr || head->next == nullptr || head->next->next == nullptr) return head;
        ListNode *oddHead = head, *evenHead = head->next;
        ListNode *odd = oddHead, *even = evenHead;
        head = head->next->next;
        bool oddFlag = true;
        while (head != nullptr) 
            if (oddFlag) 
                odd->next = head;
                odd = odd->next;
             else 
                even->next = head;
                even = even->next;
            
            oddFlag = !oddFlag;
            head = head->next;
        
        odd->next = evenHead;
        even->next = nullptr;
        return oddHead;
    
;

以上是关于LeetCode Algorithm 328. 奇偶链表的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode Algorithm 328. 奇偶链表

LeetCode Algorithm 328. 奇偶链表

LeetCode 328. Odd Even Linked List

LeetCode-328. Odd Even Linked List

LeetCode笔记:Weekly Contest 328

<LeetCode OJ> 328. Odd Even Linked List