博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Merge k Sorted Lists
阅读量:5262 次
发布时间:2019-06-14

本文共 1793 字,大约阅读时间需要 5 分钟。

 Q:Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity.

A: 像mergesort一样,两两merge。

递归版本:

ListNode *merge(ListNode *list1,ListNode *list2)    {        if(!list1)            return list2;        if(!list2)            return list1;        ListNode *head;        if(list1->val<=list2->val)        {            head = list1;            head->next = merge(list1->next,list2);        }else        {            head = list2;            head->next = merge(list1,list2->next);        }        return head;    }    ListNode *mergeKLists(vector
&lists) { // Start typing your C/C++ solution below // DO NOT write int main() function ListNode *head = NULL; for(int i=0;i

  

 迭代版本:

ListNode *merge(ListNode *list1,ListNode *list2)    {        if(!list1)            return list2;        if(!list2)            return list1;        ListNode *head = NULL,*it1,*it2,*prev,*cur;        it1 = list1;        it2 = list2;        while(it1&&it2)        {            if(it1->val<=it2->val)            {                cur = it1;                it1 = it1->next;            }else{                cur = it2;                it2 = it2->next;            }            if(!head)            {                head = prev = cur;             }else            {                prev->next = cur;                prev = cur;            }        }                if(it1)            prev->next = it1;                if(it2)            prev->next = it2;                    return head;    }    ListNode *mergeKLists(vector
&lists) { // Start typing your C/C++ solution below // DO NOT write int main() function ListNode *head = NULL; for(int i=0;i

  

转载于:https://www.cnblogs.com/summer-zhou/p/3141811.html

你可能感兴趣的文章
MAVEN设置HTTP代理
查看>>
Android ListView分页加载时图片显示问题
查看>>
秋季学习总结
查看>>
LoadRunner12 Java Vuser API语法举例
查看>>
VS2013中如何解决error C4996: 'fopen'问题
查看>>
VS2013 中 CString类型转换为LPCSTR类型
查看>>
输入一个整形数组,求数组中连续的子数组使其和最大
查看>>
九大内置对象!!!
查看>>
unity摄像机的平滑过渡,平滑缓冲
查看>>
SilverLight OOB模式将实体转换成XML文件写入本地文件
查看>>
2013年的总结,比以往时候来得晚了一些
查看>>
2019年春季学期第四周作业
查看>>
python实现DFA模拟程序(附java实现代码)
查看>>
Ftp 文件上传下载类
查看>>
php正则匹配图片
查看>>
hdu3480 Division(dp平行四边形优化)
查看>>
bzoj 4725 [POI2017]Reprezentacje ró?nicowe 暴力
查看>>
史上最浅显易懂的Git教程!
查看>>
python 关键字
查看>>
Linux常用命令大全
查看>>