题解 | #反转链表#
反转链表
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||pHead->next==nullptr){
return pHead;
}
ListNode *r=pHead->next->next,*p=pHead->next,*h=pHead;
pHead->next=nullptr;
do{
p->next=h;
h=p;
p=r;
if(p==nullptr){
break;
}
r=p->next;
}while(p!=nullptr);
return h;
}
};

