为了防止找不到下一个元素,需要额外的指针
时间复杂度 , 空间复杂度
class Solution {
public:
ListNode* reverseList(ListNode* head) {
if(head == nullptr or head -> next == nullptr) return head;
ListNode *pre = head, *now = pre -> next, *suf = now -> next;
pre -> next = nullptr;
while(now != nullptr) {
now -> next = pre;
pre = now;
now = suf;
if(suf != nullptr) suf = suf -> next;
}
return pre;
}
};