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;
}
相关推荐
_OP_CHEN1 小时前
【前端开发之HTML】(四)HTML 标签进阶:表格、表单、布局全掌握,从新手到实战高手!
前端·javascript·css·html·html5·网页开发·html标签
Alair‎2 小时前
前端开发之环境配置
前端·react.js
谢尔登2 小时前
Vue3底层原理——keep-alive
javascript·vue.js·ecmascript
Deca~2 小时前
VueVirtualLazyTree-支持懒加载的虚拟树
前端·javascript·vue.js
2501_944526422 小时前
Flutter for OpenHarmony 万能游戏库App实战 - 主题切换实现
android·开发语言·javascript·python·flutter·游戏·django
爱上妖精的尾巴2 小时前
7-11 WPS JS宏 对象的属性值为函数的写法与用法
前端·javascript·wps·js宏·jsa
zuozewei2 小时前
零基础 | 使用LangChain框架实现ReAct Agent
前端·react.js·langchain
坠入暮云间x2 小时前
React Native for OpenHarmony开发环境搭建指南(一)
前端·react native·开源
爱上妖精的尾巴2 小时前
7-12 WPS JS宏 this、return用构造函数自定义类-1:对象内部函数,外部调用的写法
前端·javascript·wps·js宏·jsa