LeetCode Odd Even Linked List
题意:给出一个单链表,将位于奇数位和偶数位的分组,重新组成链表,要求空间复杂度为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;}
}
LeetCode Odd Even Linked List相关推荐
- LeetCode 92. Reverse Linked List II--Python 解法--反转部分链表--笔试算法题
题目地址:Reverse Linked List II - LeetCode Reverse a linked list from position m to n. Do it in one-pass ...
- 【回文串7】LeetCode 234. Palindrome Linked List
LeetCode 234. Palindrome Linked List Solution1:我的答案 一遍过,哈哈哈! /*** Definition for singly-linked list. ...
- 【??链表】LeetCode 92. Reverse Linked List II
LeetCode 92. Reverse Linked List II Solution1: 参考网址:http://www.cnblogs.com/grandyang/p/4306611.html ...
- 【LeetCode】328. Odd Even Linked List 解题报告(Python C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...
- [leetcode]328. Odd Even Linked List
题目 Given a singly linked list, group all odd nodes together followed by the even nodes. Please note ...
- leetcode 328. Odd Even Linked List | 328. 奇偶链表(Java)
题目 https://leetcode.com/problems/odd-even-linked-list/ 题解 要注意的是,因为只将偶数位置的节点 append 到最后,所以用于判断停止的 tai ...
- LeetCode 206 Reverse Linked List--反转链表--迭代与递归解法--递归使用一个临时变量,迭代使用3个
此题链接:Reverse Linked List - LeetCode Reverse a singly linked list. Example: Input: 1->2->3-> ...
- Leet Code OJ 328. Odd Even Linked List [Difficulty: Easy]
题目: Given a singly linked list, group all odd nodes together followed by the even nodes. Please note ...
- leetcode 203. Remove Linked List Elements(链表)
Remove all elements from a linked list of integers that have value val. Example Given: 1 --> 2 -- ...
最新文章
- Erlang error?
- cv2.circle函数
- 火狐不支持event.keyCode,用jquery中的event.which轻松解决。
- 有监督学习和无监督学习举例_对比自监督学习
- Tiny模板语言(VelocityPlus)初步入门
- 使用Servlet上传多张图片——Dao层(ProductInfoDao.java)
- mysql安装注意步骤,mysql安装步骤
- laravel 如何 new php 类,PHP实例:laravel通过创建自定义artisan make命令来新建类文件详解...
- 50-00-040-配置-Flink Configuration简介
- java调用c 返回值_推荐--Linux平台下Java调用C函数(补充关于String类型函数返回值)...
- Ajax关于readyState和status的讨论
- 【博客管理】他山之石简介【置顶】
- Shell脚本定义变量和重新赋值
- 一、二线城市 IT 公司大盘点!建议收藏
- 【滤波器】4. 反相输入有源低通滤波器
- 国际足联还不考虑在中国办一届世界杯吗?
- FFmpeg源码分析:avcodec_find_decoder()查找解码器
- 蜀山前传之二---------------第八回
- Laya之微信小游戏入门
- 达人秀计算机教学,回顾〡信息技术达人秀
热门文章
- 如何成为一名专家级的开发人员
- python里面的之前打过的记忆信息-忘了Python关键语句?这份备忘录拯救你的记忆...
- 自学python数据分析要多久-如果只有1小时学Python,看这篇就够了
- python入门自学-你是如何自学 Python 的?
- python csv读取-Python对于CSV文件的读取与写入
- python中文解释-python注释和2版本的中文乱码
- 用python画烟花-如何用python画烟花
- python创建csv文件并写入-Python 读写 CSV
- python常用函数-Python 学习:常用函数整理
- 运行python需要网吗-浏览器运行python脚本吗