LeetCode Odd Even Linked List
来源:互联网 发布:黑莓9930软件 编辑:程序博客网 时间:2024/05/18 06:58
题意:给出一个单链表,将位于奇数位和偶数位的分组,重新组成链表,要求空间复杂度为O(1)
思路:用四个结点,其中两个表示奇数链表的头和尾,另外两个表示偶数链表的头和尾,注意,偶数链表的尾可能为空或者不为空,在不为空时,需要将下一结点置为空
代码如下:
class Solution{ public ListNode oddEvenList(ListNode head) { if (null == head) return head; ListNode oddhead = null; ListNode oddtail = null; ListNode evenhead = null; ListNode eventail = null; ListNode p = head; int cnt = 1; while (p != null) { if (1 == cnt % 2) { if (null == oddhead) { oddhead = p; oddtail = p; } else { oddtail.next = p; oddtail = oddtail.next; } } else { if (null == evenhead) { evenhead = p; eventail = p; } else { eventail.next = p; eventail = eventail.next; } } p = p.next; cnt++; } if (eventail != null) eventail.next = null; oddtail.next = evenhead; return oddhead; }}
0 0
- leetcode Odd Even Linked List
- [leetcode]Odd Even Linked List
- [Leetcode]Odd Even Linked List
- LeetCode Odd Even Linked List
- Leetcode: Odd Even Linked List
- LeetCode:Odd Even Linked List
- [LeetCode] Odd Even Linked List
- LEETCODE--Odd Even Linked List
- 【leetcode】Odd Even Linked list
- Leetcode Odd Even Linked List
- [LeetCode]Odd Even Linked List
- leetcode Odd Even Linked List
- 【Leetcode】 Odd Even Linked List
- LeetCode Odd Even Linked List
- Leetcode Odd Even Linked List
- Leetcode Odd Even Linked List
- LeetCode Odd Even Linked List
- leetcode Odd Even Linked List
- 判断二叉树是否为平衡二叉树
- Android自定义RatingBar(评分控件)
- UNIX/LINUX删除文件末尾的^M
- NSObjCRuntime, NSZone, NSObject报错Unknown
- iOS 常用小技巧大杂烩(下)
- LeetCode Odd Even Linked List
- linearlayout详解
- MyEclipse创建第一个Servlet程序
- Android activity属性汇总
- 【软件工程】持续集成:如何建立百万行级代码的版本构建系统(二)架构拓展
- 使用JSP/Servlet开发系统-课程复习试卷测试分析2
- 乐学成语——为界面加入淡入淡出的效果
- hihocoder:1032 : 最长回文子串
- kafka入门(二)——kafka的逻辑结构