public ListNode reverseBetween (ListNode head, int m, int n) {
if(head==null||n<m||n==0){
return head;
}
ListNode reverseNode=new ListNode(0);
reverseNode.next=head;
ListNode pre=reverseNode;
for(int i=1;i<m;i++){
pre=pre.next;
}
ListNode curr=pre.next;
while(n-->m){
ListNode temp=curr.next;
curr.next=temp.next;
temp.next=pre.next;
pre.next=temp;
}
return reverseNode.next;
}
链表内指定区间反转
最新推荐文章于 2025-07-15 11:49:08 发布