思路
定义两个指针: pre 和 cur;pre 在右 cur 在左,初始cur指向NULL,pre指向第一个结点每次让 pre 的 next指向 cur ,实现一次局部反转局部反转完成之后, pre 和 cur同时往前移动一个位置,循环上述过程,直至 pre到达链表尾部
class Solution
{
public
:
ListNode
* reverseList(ListNode
* head
) {
ListNode
* cur
= NULL, *pre
= head
;
while (pre
!= NULL) {
ListNode
* t
= pre
->next
;
pre
->next
= cur
;
cur
= pre
;
pre
= t
;
}
return cur
;
}
};
作者:huwt 链接:https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof/solution/fan-zhuan-lian-biao-yi-dong-de-shuang-zhi-zhen-jia/