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 相关文章推荐
python解析文件示例
Jan 23 Python
python复制文件的方法实例详解
May 22 Python
使用python实现BLAST
Feb 12 Python
详解python中asyncio模块
Mar 03 Python
Python3读取Excel数据存入MySQL的方法
May 04 Python
Python操作mongodb数据库进行模糊查询操作示例
Jun 09 Python
Python对象属性自动更新操作示例
Jun 15 Python
python实现dijkstra最短路由算法
Jan 17 Python
python操作小程序云数据库实现简单的增删改查功能
Jun 06 Python
python 实现在shell窗口中编写print不向屏幕输出
Feb 19 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
Jun 28 Python
用基于python的appium爬取b站直播消费记录
Apr 17 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
AJAX的跨域访问-两种有效的解决方法介绍
2013/06/22 PHP
php实现四舍五入的方法小结
2015/03/03 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
2017/10/26 PHP
javascript 写类方式之二
2009/07/05 Javascript
Javascript 函数中的参数使用分析
2010/03/27 Javascript
javascript动画之圆形运动,环绕鼠标运动作小球
2010/07/20 Javascript
JavaScript为对象原型prototype添加属性的两种方式
2010/08/01 Javascript
JS解析json数据并将json字符串转化为数组的实现方法
2012/12/25 Javascript
javascript的document中的动态添加标签实现方法
2016/10/24 Javascript
JavaScript实现多栏目切换效果
2016/12/12 Javascript
jquery tmpl模板(实例讲解)
2017/09/02 jQuery
使用async、enterproxy控制并发数量的方法详解
2018/01/02 Javascript
JavaScript实现删除数组重复元素的5种常用高效算法总结
2018/01/18 Javascript
解决在vue项目中,发版之后,背景图片报错,路径不对的问题
2018/03/06 Javascript
详解Vue之父子组件传值
2019/04/01 Javascript
Python函数学习笔记
2008/10/07 Python
python中文编码问题小结
2014/09/28 Python
Python yield 使用浅析
2015/05/28 Python
使用Python+Splinter自动刷新抢12306火车票
2018/01/03 Python
对python过滤器和lambda函数的用法详解
2019/01/21 Python
浅谈Python3实现两个矩形的交并比(IoU)
2020/01/18 Python
Python自带的IDE在哪里
2020/07/01 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
2020/10/20 Python
澳大利亚波西米亚风连衣裙在线商店:Fortunate One
2019/04/01 全球购物
美国宠物护理专家:Revival Animal Health
2020/01/05 全球购物
JD Sports西班牙:英国领先的运动服装公司
2020/01/06 全球购物
毕业生自荐书
2013/12/18 职场文书
期末自我鉴定
2014/01/23 职场文书
董事长秘书职责
2014/01/31 职场文书
学生会离职感言
2014/02/11 职场文书
客服部班长工作责任制
2014/02/25 职场文书
求职信标题怎么写
2014/05/26 职场文书
四风问题对照检查材料整改措施
2014/09/27 职场文书
12.4全国法制宣传日活动方案
2014/11/02 职场文书
责任书范本大全
2015/05/11 职场文书
AudioContext 实现音频可视化(web技术分享)
2022/02/24 Javascript