题解 | #反转链表#
反转链表
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* p = pHead; ListNode* q = p->next; p->next = nullptr; // 头节点不为空时, 反转后,头节点的next应为空 while (q != nullptr) { ListNode* k = q->next; q->next = p; p = q; q = k; } return p; } };