题解 | #反转链表#
/* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ListNode* ReverseList(ListNode* pHead) { ListNode *pre=nullptr;//空指针保存之前的数 ListNode *tmp=pHead;//暂时变量保存当前的值 ListNode *next_tmp=nullptr;//保存下一个数 //不为空的时候执行这个 while(tmp) { next_tmp=tmp->next;//next_tmp赋值成当前数字的下一个数 tmp->next=pre;//下一个数字的位置变成pre了,pre=phead pre=tmp;//pre=当前的数 tmp=next_tmp;//phead这个位置的数字变成tmp—next的了。 } return pre;//返回空 } };