输入一个链表,反转链表后,输出链表的所有元素。
class Solution {
public:
pair<ListNode*,ListNode*> reverseList(ListNode* pHead){
if(pHead->next == NULL)return {pHead,pHead};
auto tp = reverseList(pHead->next);
tp.first->next = pHead;
return {pHead,tp.second};
}
ListNode* ReverseList(ListNode* pHead) {
if(pHead == NULL) return NULL; //鲁棒性:判断链表是否为空
auto tp = reverseList(pHead);
tp.first->next = NULL;
return tp.second;
}
};