Problem
Given a singly linked list, group all odd nodes together followed by the even nodes. Please note here we are talking about the node number and not the value in the nodes.
ExampleExample:
Given 1->2->3->4->5->NULL,
return 1->3->5->2->4->NULL.
public class Solution { /** * @param head: a singly linked list * @return: Modified linked list */ public ListNode oddEvenList(ListNode head) { if (head != null) { //odd and even as two pointers, head and evenHead as two heads ListNode odd = head; ListNode even = head.next; ListNode evenHead = head.next; while (even != null && even.next != null) { odd.next = even.next; even.next = even.next.next; odd = odd.next; even = even.next; } odd.next = evenHead; } return head; } }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/71608.html
摘要:最后将奇数链表尾连到偶数链表头即可。改进的思路在于减少额外的变量创建。奇数指针的初始值为,而偶数指针的初始值为。则下一个奇数值位于上,此时将该奇数指针移动到上之后,偶数指针的值则为。 题目要求 Given a singly linked list, group all odd nodes together followed by the even nodes. Please note...
Problem Given a singly linked list, group all odd nodes together followed by the even nodes. Please note here we are talking about the node number and not the value in the nodes. You should try to do ...
摘要:给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。链表的第一个节点视为奇数节点,第二个节点视为偶数节点,以此类推。需要记录偶数位节点的第一个节点,因为这是偶数链表的头节点,最后拼接链表时要用奇数链表的尾节点连接该节点。 给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。 请尝试使用原地算法完成...
摘要:给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。链表的第一个节点视为奇数节点,第二个节点视为偶数节点,以此类推。需要记录偶数位节点的第一个节点,因为这是偶数链表的头节点,最后拼接链表时要用奇数链表的尾节点连接该节点。 给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。 请尝试使用原地算法完成...
Given a singly linked list, group all odd nodes together followed by the even nodes. Please note here we are talking about the node number and notthe value in the nodes.You should try to do it in plac...
阅读 860·2021-10-25 09:44
阅读 1224·2021-09-23 11:56
阅读 1060·2021-09-10 10:50
阅读 3000·2019-08-30 15:53
阅读 2030·2019-08-30 13:17
阅读 582·2019-08-29 18:43
阅读 2392·2019-08-29 12:57
阅读 814·2019-08-26 12:20