当前位置:网站首页>23. 合并K个升序链表-c语言
23. 合并K个升序链表-c语言
2022-07-07 14:15:00 【Mr Gao】
23. 合并K个升序链表-c语言
给你一个链表数组,每个链表都已经按升序排列。
请你将所有链表合并到一个升序链表中,返回合并后的链表。
示例 1:
输入:lists = [[1,4,5],[1,3,4],[2,6]]
输出:[1,1,2,3,4,4,5,6]
解释:链表数组如下:
[
1->4->5,
1->3->4,
2->6
]
将它们合并到一个有序链表中得到。
1->1->2->3->4->4->5->6
示例 2:
输入:lists = []
输出:[]
示例 3:
输入:lists = [[]]
输出:[]
解题代码如下,很不错的题目:
/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */
struct ListNode* merge(struct ListNode* list1,struct ListNode* list2){
struct ListNode*p=(struct ListNode*)malloc(sizeof(struct ListNode));
p->next=NULL;
struct ListNode *s=p;
if(list1==NULL&&list2){
p->next=list2;
}
if(list2==NULL&&list1){
p->next=list1;
}
while(list1&&list2){
if(list1->val<list2->val){
p->next=list1;
p=p->next;
list1=list1->next;
if(list1==NULL){
p->next=list2;
}
}
else{
p->next=list2;
p=p->next;
list2=list2->next;
if(list2==NULL){
p->next=list1;
}
}
}
return s->next;;
}
struct ListNode* mergeKLists(struct ListNode** lists, int listsSize){
int i;
if(listsSize==0){
return NULL;
}
struct ListNode *l=lists[0];
for(i=1;i<listsSize;i++){
l=merge(l,lists[i]);
}
return l;
}
边栏推荐
- PHP实现执行定时任务的几种思路详解
- Introduction to pyGame games
- Rongyun won the 2022 China Xinchuang digital office portal excellence product award!
- Balanced binary tree (AVL)
- 【HCSD大咖直播】亲授大厂面试秘诀-简要笔记
- The unity vector rotates at a point
- laravel中将session由文件保存改为数据库保存
- AE learning 02: timeline
- How to determine whether the checkbox in JS is selected
- asyncio 概念和用法
猜你喜欢
Plate - forme de surveillance par étapes zabbix
山东老博会,2022中国智慧养老展会,智能化养老、适老科技展
2022第四届中国(济南)国际智慧养老产业展览会,山东老博会
删除 console 语句引发的惨案
Xcode Revoke certificate
Strengthen real-time data management, and the British software helps the security construction of the medical insurance platform
SysOM 案例解析:消失的内存都去哪了 !| 龙蜥技术
Sysom case analysis: where is the missing memory| Dragon lizard Technology
无法将“pip”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
torch. Numel action
随机推荐
Wireless sensor networks -- ZigBee and 6LoWPAN
Plate - forme de surveillance par étapes zabbix
Use moviepy Editor clips videos and intercepts video clips in batches
TiDB For PostgreSQL和YugabyteDB在Sysbench上的性能对比
Aerospace Hongtu information won the bid for the database system research and development project of a unit in Urumqi
如何在shell中实现 backspace
目标跟踪常见训练数据集格式
删除 console 语句引发的惨案
What else can an ordinary person do besides working in a factory to make money?
leetcode 241. Different ways to add parentheses design priority for operational expressions (medium)
JS modularization
Iptables only allows the specified IP address to access the specified port
Shipping companies' AI products are mature, standardized and applied on a large scale. CIMC, the global leader in port and shipping AI / container AI, has built a benchmark for international shipping
一个普通人除了去工厂上班赚钱,还能干什么工作?
山东老博会,2022中国智慧养老展会,智能化养老、适老科技展
A JS script can be directly put into the browser to perform operations
Markdown formula editing tutorial
Apache Doris刚“毕业”:为什么应关注这种SQL数据仓库?
Mysql database basic operation DQL basic query
95. (cesium chapter) cesium dynamic monomer-3d building (building)