博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[Lintcode]165. Merge Two Sorted Lists/[Leetcode]21. Merge Two Sorted Lists
阅读量:5101 次
发布时间:2019-06-13

本文共 1192 字,大约阅读时间需要 3 分钟。

/

  • 本题难度: Easy
  • Topic: Linked List

Description

Merge two sorted (ascending) linked lists and return it as a new sorted list. The new sorted list should be made by splicing together the nodes of the two lists and sorted in ascending order.

Example

Example 1:
Input: list1 = null, list2 = 0->3->3->null
Output: 0->3->3->null

Example 2:

Input: list1 = 1->3->8->11->15->null, list2 = 2->null
Output: 1->2->3->8->11->15->null

我的代码

"""Definition of ListNodeclass ListNode(object):    def __init__(self, val, next=None):        self.val = val        self.next = next"""class Solution:    """    @param l1: ListNode l1 is the head of the linked list    @param l2: ListNode l2 is the head of the linked list    @return: ListNode head of linked list    """    def mergeTwoLists(self, l1, l2):        # write your code here        if l1 is None:            return l2        if l2 is None:            return l1        res = pos = ListNode(0)        while(l1 and l2):            if l1.val 

思路

  1. 之前没有仔细看过python的面向对象编程,因为Linked List中用到了定义新的类,所以简单看了一下教程:,写了笔记
  2. 如果一开始就要决定新建第一个点的val,则需要和后面非常重复的判断条件,代码会很繁琐。借鉴了leetcode上的参考答案的思路,头结点仅用于建立链表,最后的结果舍弃掉头结点就好了。
  • 时间复杂度 O(n)

转载于:https://www.cnblogs.com/siriusli/p/10364804.html

你可能感兴趣的文章
【深度学习】caffe 中的一些参数介绍
查看>>
QML学习笔记之一
查看>>
App右上角数字
查看>>
小算法
查看>>
新作《ASP.NET MVC 5框架揭秘》正式出版
查看>>
WPF中实现多选ComboBox控件
查看>>
读构建之法第四章第十七章有感
查看>>
Windows Phone开发(4):框架和页 转:http://blog.csdn.net/tcjiaan/article/details/7263146
查看>>
python asyncio 异步实现mongodb数据转xls文件
查看>>
TestNG入门
查看>>
【ul开发攻略】HTML5/CSS3菜单代码 阴影+发光+圆角
查看>>
IOS-图片操作集合
查看>>
IO—》Properties类&序列化流与反序列化流
查看>>
jquery实现限制textarea输入字数
查看>>
Codeforces 719B Anatoly and Cockroaches
查看>>
ActiveMQ与spring整合
查看>>
EOS生产区块:解析插件producer_plugin
查看>>
格式化输出数字和时间
查看>>
关于TFS2010使用常见问题
查看>>
URL编码与解码
查看>>