27.合并有序链表,串葫芦

1.直接看题解有详细注释

要注意的只有初试是什么状态开始的,什么状态结束的

cpp 复制代码
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) {
    if(list1==NULL) return list2;
    if(list2==NULL) return list1;
    struct ListNode* head = NULL;//新的头节点
    
    //开始找新的头节点是哪个链表的头节点
    if(list1->val > list2->val){
        head = list2;
        list2 = list2->next;
    }else{
        head = list1;
        list1 = list1->next;
    }
    //此时从head开始串,最后返回head
    struct ListNode* cur = head;
    while(list1!=NULL && list2!=NULL){
        if(list1->val > list2->val){
            //串2
            cur->next = list2;
            list2 = list2->next;
            cur =cur->next;
        }else{
            cur->next = list1;
            list1 = list1->next;
            cur = cur->next;
        }
    }
    //此时有一个为空了 是哪个呢?作下判断,把剩下那个不空的串起来即可
    if(list1==NULL){
        cur->next = list2;
    }else{
        cur->next = list1;
    }
    return head;
}
相关推荐
贼爱学习的小黄17 分钟前
NC BIP参照开发
java·前端·nc
weixin_4629019717 分钟前
ESP32 LED控制代码解析
javascript
小江的记录本21 分钟前
【MyBatis-Plus】MyBatis-Plus的核心特性、条件构造器、分页插件、乐观锁插件
java·前端·spring boot·后端·sql·tomcat·mybatis
小张会进步22 分钟前
数组:二维数组
java·javascript·算法
光影少年26 分钟前
如何进行前端性能优化?
前端·性能优化
Dxy123931021633 分钟前
js如何把字符串转数字
开发语言·前端·javascript
爱写bug的野原新之助41 分钟前
爬虫之补环境:加载原型链
前端·javascript·爬虫
陈广亮1 小时前
工具指南7-Unix时间戳转换工具
前端
NGBQ121381 小时前
Adobe-Premiere-Pro-2026-26.0.2.2-m0nkrus 全解析:专业视频编辑软件深度指南
前端·adobe·音视频
北城笑笑1 小时前
Chrome:Paused in debugger 的踩坑实录:问题排查全过程与终极解决方案( 在调试器中暂停 )
前端·chrome