C++单链表逆序

牛客网真题:单链表的逆序
C++的单链表逆序:
创建3个指针,分别指向当前头节点位置,空空。
先将一个指针指向头节点的下一个节点,下一个节点为当前节点的下一个节点,当前节点的下一个节点为前一个节点,前一个结点为当前节点,当前节点为下一个节点。

	struct ListNode* ReverseList(struct ListNode* pHead ) {
    // write code here
        struct ListNode *pre = NULL;
        struct ListNode *cur = pHead;
        struct ListNode *nex = NULL; 
        while (cur) {
            nex = cur->next;
            cur->next = pre;
            pre = cur;
            cur = nex;
        }
        return pre;
}

版权声明:本文为m0_51380378原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。