BM1 题解 | #反转链表#
反转链表
https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca
/* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ListNode* ReverseList(ListNode* pHead) { if (pHead == nullptr) { return nullptr; } ListNode* pre = pHead; ListNode* cur = pHead->next; if (cur == nullptr) { return pHead; } ListNode* r = cur->next; cur->next = pre; pre->next = nullptr; ListNode* x; while (r != nullptr) { x = r->next; pre = cur; cur = r; r->next = pre; r = x; } return cur; } };