92. 反转链表 II
var reverseBetween = function(head, left, right) {
if(!head)return null;
let ret=new ListNode(-1,head),pre=ret,cnt=right-left+1;
while(--left){
pre=pre.next;
}
pre.next=reverse(pre.next,cnt);
return ret.next;
}
var reverse=function(head,n){
let pre=null,cur=head;
while(n--){
[cur.next,pre,cur]=[pre,cur,cur.next]
}
head.next=cur;
return pre;
}

浙公网安备 33010602011771号