题解 | #链表内指定区间反转#
链表内指定区间反转
https://www.nowcoder.com/practice/b58434e200a648c589ca2063f1faf58c
1->2->3->4->5 pre:1,cur:2
思路:
1)找到开始反转的节点cur,并记录前一个节点pre
2)pre、cur始终不需要移动,最后局部完成反转后,pre作为反转头节点,cur作为尾节点
3)开始局部反转:每一次将需要反转的节点cur->next插入到pre和pre->next之间
while(n){
【第1轮】:完成1->3->2->4->5
第1步,取到3
第2步,2连接到4
第3步,3连到2
第4步,1连到3
【第2轮】:完成1->4->3->2->5
第2步,2连接到4
第3步,3连到2
第4步,1连到3
【第2轮】:完成1->4->3->2->5
}