码迷,mamicode.com
首页 > 其他好文 > 详细

leetcode 328 奇偶链表

时间:2020-04-12 08:11:42      阅读:59      评论:0      收藏:0      [点我收藏+]

标签:solution   ext   node   ems   空间复杂度   one   一个   链表   return   

地址:https://leetcode-cn.com/problems/odd-even-linked-list/
大意:给定一个链表,把所有的奇数节点排在左边,其他排在右边。
要求:时间复杂度O(n) 空间复杂度O(1)

class Solution {
public:
    ListNode* oddEvenList(ListNode* head) {
        if(head == NULL || head->next == NULL || head->next->next == NULL)
            return head;

        ListNode *oneNode = head;
        ListNode *twoNode = head->next;

        ListNode *secendNode = twoNode->next;

        while(twoNode && twoNode->next){
            secendNode = twoNode->next;

            twoNode->next = twoNode->next->next;
            secendNode->next = oneNode->next;
            oneNode->next = secendNode;

            oneNode = oneNode->next;
            twoNode = twoNode->next;
        }
        return head;
    }
};

leetcode 328 奇偶链表

标签:solution   ext   node   ems   空间复杂度   one   一个   链表   return   

原文地址:https://www.cnblogs.com/c21w/p/12683498.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!