原地反转单链表(三指针,一次过,自留存)

    科技2022-07-20  123

    反转链表

    反转一个单链表。

    示例:

    输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* reverseList(ListNode* head) { ListNode *p = head; if(p==NULL) return NULL; ListNode *r=NULL; ListNode *cur=p; ListNode *next; while(cur!=NULL) { next=cur->next; cur->next=r; r=cur; cur=next; } return r; } };

     

    Processed: 0.009, SQL: 8