题目描述
- 输入一个链表,反转链表后,输出新链表的表头。
解题思路
- 通过pre, cur 两个指针一个记录前驱结点,一个记录当前结点,将链表中的结点两两进行反转,这个过程需要next指针记录下一个结点的位置。
AC代码
class Solution {
public:
ListNode* ReverseList(ListNode* pHead) {
ListNode* pre = nullptr;
ListNode* cur = pHead;
while(cur)
{
ListNode* next = cur->next;
cur->next = pre;
pre = cur;
cur = next;
}
return pre;
}
};
网友评论