您的位置:首页 > 游戏 > 手游 > LeetCode | 21.合并两个有序链表

LeetCode | 21.合并两个有序链表

2024/10/11 18:06:58 来源:https://blog.csdn.net/weixin_44043952/article/details/139640090  浏览:    关键词:LeetCode | 21.合并两个有序链表

在这里插入图片描述
这道题也是很经典的一道题了,408的算法题中也考过这个思想,因为两个链表已是升序,合并只需要两个指针,分别指向两个表的表头,分别比较两个指针所指向的结点的val,小的就插入到目标链表里面,再后移相应指针,直到有一个链表为空,再把剩下的非空链表全部查到目标链表后面即可

# Definition for singly-linked list.
# class ListNode(object):
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution(object):def mergeTwoLists(self, list1, list2):""":type list1: Optional[ListNode]:type list2: Optional[ListNode]:rtype: Optional[ListNode]"""ans = ListNode()current = ansi = list1j = list2while i is not None and j is not None:if i.val <= j.val:current.next = ListNode(i.val)i = i.nextelse:current.next = ListNode(j.val)j = j.nextcurrent = current.nextcurrent.next = i if i is not None else jreturn ans.next

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com