反转链表中前n个节点到主题的链接源:力按钮(LeetCode ) ) ) ) ) )。
链接:无
版权归互联网所有。 商业转载请联系官方许可证。 非商业转载请注明出处。
主题记述问题的分析反转前的n个节点的主题中,原来的链表的开头节点反转后,其next指向第n 1个节点。 也就是说,第n个节点的反转需要特别的处理。
类解决方案{ listnode tail=null; //n第一个节点publiclistnodereversepre (listnode head,int n ) if ) n==1) ) { tail=head.next; //n将第一个节点指定给tail return head; } listnode last=reverse list (head.next,n - 1 ); //每次进入一阶递归,head=head.next,n-- //反演操作与206相同head.next.next=head; head.next=tail; //虽然不影响中间节点的反转,但是也可以将开头节点反转而使末尾节点的后置next字段为tail,并将反转部分插入到原来的链表的return last中; }