电子商务网站 备案,上海百度seo优化,用easyui皮肤做漂亮的网站,seo长尾关键词排名给定一个单链表#xff0c;把所有的奇数节点和偶数节点分别排在一起。请注意#xff0c;这里的奇数节点和偶数节点指的是节点编号的奇偶性#xff0c;而不是节点的值的奇偶性。
请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1)#xff0c;时间复杂度应为 O(nodes)…给定一个单链表把所有的奇数节点和偶数节点分别排在一起。请注意这里的奇数节点和偶数节点指的是节点编号的奇偶性而不是节点的值的奇偶性。
请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1)时间复杂度应为 O(nodes)nodes 为节点总数。
示例 1:
输入: 1-2-3-4-5-NULL 输出: 1-3-5-2-4-NULL 示例 2:
输入: 2-1-3-5-6-4-7-NULL 输出: 2-3-6-7-1-5-4-NULL
代码
/*** 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; }* }*/
class Solution {public ListNode oddEvenList(ListNode head) {if(headnull) return head;ListNode sechead.next;ListNode oddhead;//奇数位置指针ListNode evenhead.next;//偶数位置指针while (odd!nulleven!null){odd.nexteven.next;//指向下一个奇数位置if(even.nextnull) break;even.nexteven.next.next;//指向下一个偶数位置oddodd.next;//移动eveneven.next;}odd.nextsec;return head;}
}