题目
输入一个链表,反转链表后,输出新链表的表头。
思路
水题,直接翻转即可,注意最后一步的链接
AC代码
class Solution {
public:
ListNode* ReverseList(ListNode* pHead) {
if(pHead == nullptr) {
return nullptr;
}
ListNode *pre = nullptr, *cur = pHead, *link = cur->next;
while(link != nullptr) {
cur->next = pre;
pre = cur;
cur = link;
link = cur->next;
}
cur->next = pre; // 别忘了处理最后一个
return cur;
}
};