列表转链表

思路:生成一个头节点,current指向该节点,再生成新节点,给该节点赋值val,更新current位置,依次类推。

class ListNode(object):def __int__(self,val=0,next=None):self.val = valself.next = nextclass Solution(object):def mergeTwoLists(list1, list2):""":type list1: Optional[ListNode]:type list2: Optional[ListNode]:rtype: Optional[ListNode]"""#这里ListNode需要赋val和next #但ListNode类初始化时有初始val和next 这里是个疑问?ListNode.val = 0ListNode.next = Nonedummy = current = ListNode()while list1 and list2:if list1.val < list2.val:current.next = list1current = list1list1 = list1.nextelse:current.next = list2current = list2list2 = list2.nextif list1 and not list2:current.next = list1elif not list1 and list2:current.next = list2return dummy.nextdef list2link(list):#列表转链表current = head = ListNode()for i in range(len(list)):current.val= list[i]current.next = ListNode()current = current.nextreturn headlist1 = [1,2,4]
list2 = [1,3,4]
listNode1 = list2link(list1)#链表首地址
listNode2 = list2link(list2)
# print (listNode1.val)
# print (listNode1.next.val)
# print (listNode1.next.next.val)
# print (listNode2.val)
# print (listNode2.next.val)
# print (listNode2.next.next.val)
a = Solution.mergeTwoLists(listNode1, listNode2)
#print (a.val)#打印链表 第0位置是空链首
for i in range(1,len(list1)+len(list2)):print (a.val,end=' ')a = a.next

列表转链表+链表合并相关推荐

  1. python合并k个有序链表_Leetcode合并K个升序链表(Python版本),LeetCode,python

    一.描述 给你一个链表数组,每个链表都已经按升序排列.请你将所有链表合并到一个升序链表中,返回合并后的链表. 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[ ...

  2. 【剑指Offer专题】链表系列:从尾到头打印链表、反转链表、回文链表、合并两个排序的链表(C++和Python实现)...

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 剑指Offer(三):从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每 ...

  3. 链表节点合并排序:数组和单链表

    每日一贴,今天的内容关键字为链表节点 1 数组合并排序 1.1 合并两个已排序好的数组 需要额定的存储空间用来存储合并结果 //merge two array which are already so ...

  4. 两个有序单链表的合并排序算法

    设计两个有序单链表的合并排序算法 ListList MergeList(LiskList La, LinkList Lb){Lnode *pa = La->next;Lnode *pb = Lb ...

  5. C语言求两个链表的合并点的算法(附完整源码)

    C语言求两个链表的合并点的算法 C语言求两个链表的合并点的算法完整源码(定义,实现,main函数测试) C语言求两个链表的合并点的算法完整源码(定义,实现,main函数测试) #include < ...

  6. c语言实现两个有序链表的合并(代码示例)

    c语言实现两个有序链表的合并: 现有两个有序单链表,通过代码实现将两个单链表合并为一个有序的新表,要求使用旧表的空间,不能新分配内存 #include #include typedef struct ...

  7. 两个有序链表序列的合并_leetcode链表之合并两个排序的链表

    序 本文主要记录一下leetcode链表之合并两个排序的链表 题目 输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的.示例1:​输入:1->2->4, 1-> ...

  8. java 递增 实现_Java编程实现递增排序链表的合并

    题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则. 解答: /* public class ListNode { int val; ListNode ...

  9. 数据结构——有序链表的合并,链表实现一元多项式相加

    1.有序链表的合并 void Connect(LinkList a, LinkList b, LinkList& c) {LNode* pa, * pb, * pc;//三个结点指针pa = ...

  10. c语言工程合并报告,C语言《数据结构》实验报告】链表的合并

    <C语言<数据结构>实验报告]链表的合并>由会员分享,可在线阅读,更多相关<C语言<数据结构>实验报告]链表的合并(8页珍藏版)>请在人人文库网上搜索. ...

最新文章

  1. Delphi避免重复打开窗体
  2. [经典算法] 八枚硬币
  3. 最简单EXT调用WCF
  4. 设置elf文件链接库的路径
  5. php赋值boolean,php布尔类型(Boolean)
  6. 瞧瞧 Fog Creek 软件公司办公环境
  7. Web应用架构-Full-text Search Service
  8. 项目管理(2):管理过程二
  9. hadoop使用combiner合并操作
  10. 英伟达数据中心业务营收不断创下新高,已连续9个财季保持增长
  11. html中select标签乱码,select 的过程中中文乱码有关问题求教
  12. quick time不可用_教程|用Selenium爬资源:DIY还是花钱?
  13. Load data local infile
  14. 群晖NAS教程(十五)、利用Web Station安装typecho博客
  15. C# .NET 爬虫抓取京东商城所有商品分类
  16. html绑定drag事件,HTML-Drag事件(拖拽)
  17. 三星内存编码_想问一下三星内存条的型号有什么区别
  18. 万字长文带你彻底搞懂什么是 DevOps
  19. SQL Server 2008用'sa'登录失败(错误18456)
  20. IE浏览器清除缓存的坑

热门文章

  1. Python十大最佳IDE
  2. PAT乙级 1026 程序运行时间
  3. java -jar命令参数的单横杠-和双横杠--用法
  4. ionic button 一些使用心得
  5. python调用ansys fluent_[转载]流固耦合之ansys和fluent实现方法
  6. python兼容性怎么样_简谈python的向下兼容性问题
  7. Google Play 开发者账户关联被封,如何避免新注册账户被关联封号?
  8. Java【案例6-1】 库存管理系统
  9. bezier曲面制作_Unity渲染——Bezier曲线(曲面)实现
  10. 二维码生成/保存/打印