要求使用原地算法,并且不改变节点的值
思路:将中点后的链表倒序,将倒序后的链表间隔的插入前面的链表中
1.如何找到一个链表的中点
使用快慢指针,slow每移动一步,fast移动两步
//定义两个指针
ListNode fast=head;
ListNode slow=head;
while(fast.next!=null&&fast.next.next!=null){
fast=fast.next.next;
slow=slow.next;
}
2.如何将链表倒序`
头插法
//倒序,前插法
ListNode pre=null;//记录前一个节点
while(after!=null)