LeetCode初级算法--链表02:合并两个有序链表
一、引子
这是由LeetCode官方推出的的经典面试题目清单~
这个模块对应的是探索的初级算法~旨在帮助入门算法。我们第一遍刷的是leetcode推荐的题目。
二、题目
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
示例:
输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4
1、思路
首先我们看到的数一个有序的链表,所以我们可以先比较两个链表长度相等的部分,按照顺序进行排列,对于剩下一个链表的部分,直接插入到最终的链表中,详细过程见代码。
2、编程实现
# 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
"""
new_head = ListNode(0)
#返回的是合并后的列表 所以让一个节点等于这个空的节点
pHead = new_head
#进行排序
while l1 and l2:
if l1.val > l2.val:
new_head.next = l2
l2 = l2.next
else:
new_head.next = l1
l1 = l1.next
new_head = new_head.next
# 遍历剩下没遍历的列表
if l1:
new_head.next = l1
elif l2:
new_head.next = l2
return pHead.next
分享技术,乐享生活:我们的公众号计算机视觉这件小事每周推送“AI”系列资讯类文章,欢迎您的关注!
本文由博客一文多发平台 OpenWrite 发布!
审核编辑 黄昊宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
人工智能
+关注
关注
1821文章
50576浏览量
268084 -
机器学习
+关注
关注
67文章
8571浏览量
137497 -
深度学习
+关注
关注
73文章
5614浏览量
124842
发布评论请先 登录
相关推荐
热点推荐
嵌入式春招笔试高频算法题(附解题思路)
:通过相邻元素两两比较,将较大的元素逐步“冒泡”到数组末尾,重复多次,直到整个数组有序。
步骤拆解(贴合嵌入式C语言实现):
外层循环:控制排序轮次,共需n-1轮(n为数组长度),每轮排出一个最大
发表于 03-18 10:08
两个RS485-Modbus主站如何通讯
本产品能很好解决Master-1主站向模块写入数据,Master-2主站读取数据;Master-2主站向模块写入数据,Master-1主站读取数据。由此解决两个主站之间的互相读通信难题。
发表于 02-08 15:32
•1次下载
指针难学的4点原因分析
));
*p = 1;
return 0;
}
程序定义了一个指针变量p,前面有个*号;后面给指针p指向的内存区域赋值1,又有个*号,这两个*号有啥区别呢?很多初学者在这里
发表于 01-16 06:12
无数据域双向链表的代码
下面是一个简单的示例,演示了如何使用无数据域双向链表进行插入和访问操作:
#include
#include// 包含offsetof宏
// 定义节点结构体
struct Node
发表于 12-11 06:56
rt_object_get_information获取到的链表为空怎么解决?
rtt启动过程,在初始化堆的时候,进入rt_object_init,调用rt_object_get_information获取到的链表为空,导致系统起不来。
发表于 10-11 11:44
一个硬件SPI两个CS操作两个norflash,怎么互斥操作两个norflash?
一个硬件SPI两个CS操作两个norflash,怎么互斥操作两个norflash,有一个norflash被模拟成U盘,会在中断中操作spi。
发表于 09-26 06:18
请问有办法在嵌入式单片机上实现对片外Flash的数据增删功能吗?
时间要求, 工作时断电如何处理. 本来想试试sqlite, 但是看介绍需要几百K内存, 好像不是给单片机用的, 问了AI也是给我推的FlashDB, 它的KV值是支持删除的, 但是我需要有序索引, 像一个链表, 现在有没有现成的
发表于 09-23 06:10
基本半导体连获两个行业奖项
近日,基本半导体凭借在碳化硅模块领域的突出表现,连获“国产SiC模块TOP企业奖”和“年度优秀功率器件产品奖”两个行业奖项。
图中两个按键开关是两个干簧管,为什么不直接对GND设计来检测这个干簧管通断呢?
图中两个按键开关是两个干簧管,为什么不直接对GND设计来检测这个干簧管通断呢?
这样设计的原理是什么?
发表于 06-17 06:30
看到STM8L152用两个IO用两个或非门检测两个通断,是什么原理呢?
图中两个按键开关是两个干簧管,为什么不直接对GND设计来检测这个干簧管通断呢?
这样设计的原理是什么?
发表于 06-12 06:25
LeetCode初级算法-链表02:合并两个有序链表
评论