美文网首页
反转链表

反转链表

作者: 奉灬孝 | 来源:发表于2021-03-17 22:57 被阅读0次

    假设链表为 1→2→3→∅,我们想要把它改成 ∅←1←2←3。

    在遍历链表时,将当前节点的 next 指针改为指向前一个节点。由于节点没有引用其前一个节点,因此必须事先存储其前一个节点。在更改引用之前,还需要存储后一个节点。最后返回新的头引用。

    反转链表

    代码如下:

    struct ListNode* reverseList(struct ListNode* head) {
        struct ListNode* pre = NULL;
        struct ListNode* cur = head;
        while (cur) {
            struct ListNode* next = cur->next;
            cur->next = pre;
            pre = cur;
            cur = next;
        }
        return pre;
    }
    

    相关文章

      网友评论

          本文标题:反转链表

          本文链接:https://www.haomeiwen.com/subject/bvlycltx.html