当前位置: 首页 > news >正文

合并两个有序链表(每日一题)

  “路虽远,行则将至”

❤️主页:小赛毛

☕今日份刷题:合并两个有序链表

 题目描述:

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

示例1:

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

示例2:

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

示例3:

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

题目分析: 

这题可太经典了,直接取小的尾插 

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/
struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2){if(list1 == NULL){return list2;}if(list2 == NULL){return list1;}struct ListNode* head = NULL,*tail = NULL;while(list1 && list2){//取小的尾插if(list1->val < list2->val){if(tail == NULL){head = tail = list1;}else{tail->next = list1;tail = tail->next;}list1 = list1->next;}else{if(tail == NULL){head = tail = list2;}else{tail->next = list2;tail = tail->next;}list2 = list2->next;}}if(list1){tail->next = list1;}if(list2){tail->next = list2;}return head;
}

http://www.lryc.cn/news/155832.html

相关文章:

  • React Hooks总览
  • 风向变了!智能汽车何以「降本」
  • 后端面试话术集锦第 十五 篇:java线程面试话术
  • cocos creator配置终端调试
  • 达梦类型转换问题-float转换为varchar
  • 怎么用postman连接websocket
  • 需求分析入门
  • 攻防世界-php_rce
  • 最小生成树Kruskal、Prim算法C++
  • 系统架构设计师-计算机系统基础知识(2)
  • 二叉树的介绍
  • 数据结构与算法复杂度介绍
  • CentOS 安装蒲公英
  • 英语语法基础--思维导图
  • Android泛型详解
  • C++信息学奥赛1178:成绩排序
  • 【计算机视觉 | 目标检测】目标检测常用数据集及其介绍(七)
  • 100天精通Golang(基础入门篇)——第20天:Golang 接口 深度解析☞从基础到高级
  • ESXi 6.7添加螃蟹2.5g网卡支持
  • 机器学习笔记之最优化理论与方法(四) 凸函数:定义与基本性质
  • 【Git】git tag 查看版本号 | 删除本地 | 删除远程仓库| 批量删除
  • thinkphp:数据库查询,嵌套别的表的查询(别的表做子查询)
  • 《Linux 系统命令及Shell脚本实践指南》
  • 代码随想录算法训练营第三十八天 | ● 理论基础 ● 509. 斐波那契数 ● 70. 爬楼梯 ● 746. 使用最小花费爬楼梯
  • Java分别用BIO、NIO实现简单的客户端服务器通信
  • React Portals
  • Python基础之高级函数
  • CSS3常用的新功能总结
  • Lvs+KeepAlived高可用高性能负载均衡
  • 无涯教程-Android Online Test函数