2026/4/20 2:07:54
网站建设
项目流程
系统下载 网站 源码,中国核工业第二三建设有限公司,郑州网站建设招聘,建设工作室1.题目2.思路
原地重排链表#xff1a;
odd.nexteven.next#xff1a;跳过偶数#xff0c;把下一个奇数连起来
even.nextodd.next#xff1a;跳过奇数#xff0c;把下一个偶数连起来
最后把奇数链尾接回 evenHead
3.代码实现
/*** Definition for singly-linked list.* pu…1.题目2.思路原地重排链表odd.nexteven.next跳过偶数把下一个奇数连起来even.nextodd.next跳过奇数把下一个偶数连起来最后把奇数链尾接回 evenHead3.代码实现/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val val; } * ListNode(int val, ListNode next) { this.val val; this.next next; } * } */classSolution{publicListNodeoddEvenList(ListNodehead){//如果是空链表直接返回if(headnull){returnhead;}ListNodeevenHeadhead.next;//2ListNodeoddhead;//1ListNodeevenevenHead;//2while(even!nulleven.next!null){//1、2、3、4、5//奇数的下一位指向相邻偶数的下一位odd.nexteven.next;//第一轮[1,3]//第二轮[1,3,5]oddodd.next;//第一轮存放临时变量3, odd 指针前进到新的尾部[3]//第二轮存放临时变量5odd指针前进到新的尾部[5]even.nextodd.next;//第一轮[2,4]//第二轮[null]eveneven.next;//第一轮存放临时变量4, 指针前进到新的尾部[4]//第二轮[null],跳出循环}// 把奇数链尾接上偶数链头[5-2]odd.nextevenHead;returnhead;}}