Python实现合并两个有序链表的方法示例


Posted in Python onJanuary 31, 2019

本文实例讲述了Python实现合并两个有序链表的方法。分享给大家供大家参考,具体如下:

Python实现合并两个有序链表的方法示例

思路:先选出第一个节点,然后遍历两个链表,把小的作为当前节点的下一个节点,一直到其中一个链表遍历完,这时候把另一个链表直接接上就好

# Definition for singly-linked list.
# class ListNode(object):
#   def __init__(self, x):
#     self.val = x
#     self.next = None
class Solution(object):
  def mergeTwoLists(self, l1, l2):
    """
    :type l1: ListNode
    :type l2: ListNode
    :rtype: ListNode
    """
    #先考虑链表其中一个为空的情况
    if not l1:
      return l2
    if not l2:
      return l1
    curNode1 = l1
    curNode2 = l2
    #先选出第一个节点
    if curNode1.val < curNode2.val:
      head = curNode1
      curNode1 = curNode1.next
    else:
      head = curNode2
      curNode2 = curNode2.next
    cur = head
    while curNode1 and curNode2:
      if curNode1.val < curNode2.val:
        cur.next = curNode1
        curNode1 = curNode1.next
      else:
        cur.next = curNode2
        curNode2 = curNode2.next
      cur = cur.next
    #一直循环到有一个链表先结束
    #如果是链表1先结束,则拼上链表2剩余的那段
    if not curNode1:
      cur.next = curNode2
    #如果是链表2先结束,则拼上链表1剩余的那段
    else:
      cur.next = curNode1
    return head

Python实现合并两个有序链表的方法示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
paramiko模块安装和使用(远程登录服务器)
Jan 27 Python
Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息示例
Aug 21 Python
Python解决N阶台阶走法问题的方法分析
Dec 28 Python
python实现n个数中选出m个数的方法
Nov 13 Python
使用python批量化音乐文件格式转换的实例
Jan 09 Python
python pygame实现五子棋小游戏
Oct 26 Python
Python3显示当前时间、计算时间差及时间加减法示例代码
Sep 07 Python
python查看数据类型的方法
Oct 12 Python
python_array[0][0]与array[0,0]的区别详解
Feb 18 Python
基于python tkinter的点名小程序功能的实例代码
Aug 22 Python
详解python 支持向量机(SVM)算法
Sep 18 Python
Python中tkinter的用户登录管理的实现
Apr 22 Python
Django 日志配置按日期滚动的方法
Jan 31 #Python
Python类的继承用法示例
Jan 31 #Python
判断python对象是否可调用的三种方式及其区别详解
Jan 31 #Python
python3使用QQ邮箱发送邮件
May 20 #Python
Python实现FTP弱口令扫描器的方法示例
Jan 31 #Python
对python条件表达式的四种实现方法小结
Jan 30 #Python
python从子线程中获得返回值的方法
Jan 30 #Python
You might like
smarty简单应用实例
2015/11/03 PHP
PHP结合Jquery和ajax实现瀑布流特效
2016/01/07 PHP
Thinkphp自定义代码生成工具及用法说明(附下载地址)
2016/05/27 PHP
Javascript Jquery 遍历Json的实现代码
2010/03/31 Javascript
jQuery的写法不同导致的兼容性问题的解决方法
2010/07/29 Javascript
javascript 数组的定义和数组的长度
2016/06/07 Javascript
JavaScript读二进制文件并用ajax传输二进制流的方法
2016/07/18 Javascript
Bootstrap的popover(弹出框)2秒后定时消失的实现代码
2017/02/27 Javascript
微信小程序实现移动端滑动分页效果(ajax)
2017/06/13 Javascript
JS库之Three.js 简易入门教程(详解之一)
2017/09/13 Javascript
详解react服务端渲染(同构)的方法
2017/09/21 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
jQuery实现的卷帘门滑入滑出效果【案例】
2019/02/18 jQuery
[22:59]VGJ.S vs VG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python3图片转换二进制存入mysql
2013/12/06 Python
Python实现爬取知乎神回复简单爬虫代码分享
2015/01/04 Python
python自带的http模块详解
2016/11/06 Python
python dlib人脸识别代码实例
2019/04/04 Python
Django 对IP访问频率进行限制的例子
2019/08/30 Python
python中的数组赋值与拷贝的区别详解
2019/11/26 Python
Python super()方法原理详解
2020/03/31 Python
Python实例方法、类方法、静态方法区别详解
2020/09/05 Python
稀有和绝版书籍:Biblio.com
2017/02/02 全球购物
Coccinelle官网:意大利的著名皮具品牌
2019/05/15 全球购物
Hotels.com日本:国外和海外住宿,酒店预订
2019/12/13 全球购物
温泉秘密:Onsen Secret
2020/07/06 全球购物
护理自我鉴定范文
2013/10/06 职场文书
思想汇报范文
2013/11/04 职场文书
周鸿祎:教你写创业计划书
2013/12/30 职场文书
党支部书记先进事迹
2014/01/17 职场文书
好人好事演讲稿
2014/09/01 职场文书
公司授权委托书格式范文
2014/10/02 职场文书
乱丢垃圾袋检讨书
2014/10/08 职场文书
2015年全国助残日活动方案
2015/05/04 职场文书
python基础入门之字典和集合
2021/06/13 Python
详解TypeScript的基础类型
2022/02/18 Javascript