题解 | #链表的奇偶重排#

链表的奇偶重排

https://www.nowcoder.com/practice/02bf49ea45cd486daa031614f9bd6fc3

class Solution {
  public:
    ListNode* oddEvenList(ListNode* head) {
        if (head == nullptr || head->next == nullptr || head->next->next == nullptr) {
            return head;
        }
        ListNode* oddListHead = new ListNode(head->val);
        ListNode* oddList = oddListHead;
        ListNode* evenListHead = new ListNode(head->next->val);
        ListNode* evenList = evenListHead;
        auto p = head;
        while (p->next != nullptr && p->next->next != nullptr) {
            p = p->next->next;
            auto q = new ListNode(p->val);
            oddList->next = q;
            oddList = q;
        }
        p = head->next;
        while (p->next != nullptr && p->next->next != nullptr) {
            p = p->next->next;
            auto q = new ListNode(p->val);
            evenList->next = q;
            evenList = q;
        }
        oddList->next = evenListHead;
        return oddListHead;
    }
};

全部评论

相关推荐

05-12 11:09
已编辑
门头沟学院 后端
SmileDog12138:没必要放这么多专业技能的描述。这些应该是默认已会的,写这么多行感觉在凑内容。项目这块感觉再包装包装吧,换个名字,虽然大家的项目基本都是网上套壳的,但是你这也太明显了。放一个业务项目,再放一个技术项目。技术项目,例如中间件的一些扩展和尝试。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务