首页 > 其他分享 >LeetCode 21.合并两个有序链表

LeetCode 21.合并两个有序链表

时间:2023-07-15 15:32:56浏览次数:28  
标签:21 nn list1 next 链表 val list2 LeetCode

题目:

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 

示例 1:

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


输入:l1 = [1,2,4], l2 = [1,3,4]
输出:[1,1,2,3,4,4]

示例 2:

输入:l1 = [], l2 = []
输出:[]

示例 3:

输入:l1 = [], l2 = [0]
输出:[0]
class Solution(object):
    def mergeTwoLists(self, list1, list2):
        if not list1:
            return list2
        if not list2:
            return list1
        res = ListNode()
        nn = res
        while list1 and list2:
            if list1.val < list2.val:
                nn.next = list1
                list1 = list1.next
            elif list1.val >= list2.val:
                nn.next = list2
                list2 = list2.next
            nn = nn.next
        nn.next = list1 if list1 else list2
        return res.next

链表一下子没想起来该怎么写,思路倒是有.......

标签:21,nn,list1,next,链表,val,list2,LeetCode
From: https://blog.51cto.com/u_16123878/6731890

相关文章

  • 数据结构练习笔记——输出单链表倒数第k个元素
    输出单链表倒数第k个元素【问题描述】已知带头结点的非空单链表中存放着若干整数,请找出该链表中倒数第k个元素。【输入形式】第一行:单链表中元素个数m,第二行:单链表中的m个整数,第三行:k值【输出形式】倒数第k个元素的值(不存在倒数第k个元素输出"no")【样例1】输入:5132450......
  • 链表操作
    1.单链表逆序,要求在原链表数据不改变的情况下进行逆序方法一:新建一个头节点,将链表中的元素一个一个放入新的头节点structListNode*reverseList(structListNode*head){structListNode*n=malloc(sizeof(structListNode));n->next=NULL;structListNode......
  • leetcode刷题记录Java
    难度等级:简单给你两个字符串word1和word2。请你从word1开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。返回合并后的字符串。classSolution{publicStringmergeAlternately(Stringword1,St......
  • leetcode刷题记录(C语言)
    给你两个字符串word1和word2。请你从word1开始,通过交替添加字母来合并字符串。如果一个字符串比另一个字符串长,就将多出来的字母追加到合并后字符串的末尾。返回合并后的字符串。输入:word1="abc",word2="pqr"输出:"apbqcr"解释:字符串合并情况如下所示:word1:a......
  • Leetcode283. 移动零
    classSolution{public:voidmoveZeroes(vector<int>&nums){if(nums.empty())return;intn=nums.size();intidx=n-1;while(idx>=0&&nums[idx]==0)idx--;for(inti=0;i<idx;i++)......
  • 07.10~07.21 总结
    07.10T1一开始理解错题意,后来看样例才发现。觉得暴力是能过的,推了下两个圆的交点坐标,然后转换成了一个求最多覆盖的问题。先想了下权值线段树,发现做不到。然后想到扫描线的思想,就考虑把点排序,打上+1/-1标记。然后排序。但是一直被排序后初始点在结束点后面的情况给卡住,后面......
  • 20090211_擲筊的方式 (基礎篇)
    要問神明事情有分菩薩佛祖...需要三杯(EX:觀世音菩薩,地藏王菩薩、阿彌陀佛等等。)神..只需要一杯(EX:關聖帝君,媽祖娘娘,土地公,王母娘娘等等。) 首先要先把自己的基本資料先報上,姓名,出生的(國or農曆)年月日(時辰),住家地址..先詢問是否可以問關於XXX的事情,可否同意給個方向......
  • Leetcode240.搜索二维矩阵II
    classSolution{public:boolsearchMatrix(vector<vector<int>>&matrix,inttarget){if(matrix.empty()||matrix[0].empty())returnfalse;intn=matrix.size(),m=matrix[0].size();intx=0,y=m-1;while(x&......
  • 2021沈阳icpc
    B.BitwiseExclusive-ORSequence题意:有\(n\)个数,他们满足\(m\)组限制,每组限制给出\(u,v\),满足a[u]^a[v]==w,求这\(n\)个数的最小值思路:对于每一组\(u,v\),按位考虑,如果\(w\)上对应位是\(0\),意味着\(a_{u},a_{v}\)这一位一样,否则不一样,这是一个二分图问题,没一位考虑一个二......
  • day03 链表基本操作
    前置知识,链表数据结构1.移除链表元素移除链表元素不难,只需要把前一个结点的下一节点指向下一个节点的下一节点如果当前遍历的节点与所给值相等,则需要移除此元素,移除元素是将上一节点的next域设置为当前节点的next,当前节点后移一位如果当前遍历的节点值不等于所给值,则前驱......