力扣21 合并两个有序链表(C++)

题目


知识点

三目运算符的不等利用

复制代码
cur->next = list1 != nullptr ? list1 : list2;

思路

链接K神有ppt


错误


题解

cpp 复制代码
class Solution {
public:
    ListNode* mergeTwoLists(ListNode* list1, ListNode* list2) {
        ListNode* dum = new ListNode(0);//伪头节点
        ListNode* cur = dum;//cur是最终链表的移动指针

        while (list1 != nullptr && list2 != nullptr) {
            if (list1->val < list2->val) {
                cur->next = list1;
                list1 = list1->next;
            }
            else {
                cur->next = list2;
                list2 = list2->next;
            }
            cur = cur->next;//一定要有的一步,拿到外面写
        }
        cur->next = list1 != nullptr ? list1 : list2;
        //等价的if-else写法
        //if (list1 != nullptr) 
        //    cur->next = list1;
        //else 
        //    cur->next = list2;

        return dum->next;
    }
};
相关推荐
无敌贵点大王2 小时前
RTThread学习记录11——RT-Thread 设备模型吃透:UART/ADC/PWM/PIN 到底有什么区别?
c语言·stm32·学习·链表
知识分享小能手5 小时前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
qq_199886875 小时前
第8板块·第2节:统一内存的高级特性与性能调优
c++·人工智能·gpu算力·cuda
2401_839080546 小时前
C++常见八股
数据结构·c++·算法
qq_199886877 小时前
第6板块 第2节 CUDA运行时API与驱动API 核心笔记
c++·人工智能·gpu算力
Tisfy7 小时前
LeetCode 3498.字符串的反转度:一次遍历
leetcode·字符串·题解·遍历
a187927218317 小时前
【算法】树(二):队列与祖先——BFS 骨架三配件、短路透传与合流
算法·leetcode·二叉树··bfs·算法讲解·树遍历
syagain_zsx8 小时前
算法基础篇 · 03 枚举(C++ 题解)
c++·算法·二进制·枚举
weixin_307779138 小时前
C++代码实现MATLAB中的ode23tb函数功能
开发语言·c++·算法·matlab
S_WEAN9 小时前
C++STL - string类的模拟实现
c++