Java实现-合并k个排序链表
来源:互联网 发布:淘宝店铺装修模版 编辑:程序博客网 时间:2024/06/13 04:43
合并k个排序链表,并且返回合并后的排序链表。尝试分析和描述其复杂度。
样例
给出3个排序链表[2->4->null,null,-1->null],返回 -1->2->4->null
/** * Definition for ListNode. * public class ListNode { * int val; * ListNode next; * ListNode(int val) { * this.val = val; * this.next = null; * } * } */ public class Solution { /** * @param lists: a list of ListNode * @return: The head of one sorted list. */ private static Comparator<ListNode> comp =new Comparator<ListNode>() {@Overridepublic int compare(ListNode o1, ListNode o2) {// TODO Auto-generated method stubreturn o1.val-o2.val;}};public static ListNode mergeKLists(List<ListNode> lists){if(lists.size()==0||lists==null){return null;}PriorityQueue<ListNode> queue=new PriorityQueue<ListNode>(lists.size(),comp);for(int i=0;i<lists.size();i++){ListNode node=lists.get(i);while(node!=null){ListNode temp=node;node=node.next;temp.next=null;queue.add(temp);}}ListNode result=new ListNode(-1);ListNode t=result;while(!queue.isEmpty()){t.next=queue.poll();t=t.next;}return result.next;}}
阅读全文
0 0
- Java实现-合并k个排序链表
- 题目:合并k个排序链表
- 合并k个排序链表
- 合并k个排序链表
- 合并k个排序链表
- 合并k个排序链表,lintcode
- 合并k个排序链表
- lintcode--合并k个排序链表
- 合并k个排序链表-LintCode
- 合并k个排序链表
- lintcode -合并k个排序链表
- LintCode--合并k个排序链表
- 104-合并k个排序链表
- lintcode 合并k个排序链表
- 合并K个已排序的链表
- [各种面试题] 合并k个排序链表
- 合并k个已排序的链表
- lintcode-合并k个排序链表-104
- 阿里巴巴2016 实习生招聘 练习题(二)
- Codeforces Round #424 (Div. 2) A. Unimodal Array(水题)
- 【贪心】POJ 3262 Protecting the Flowers
- HashMap的简单使用
- JAVA企业面试题精选 Java基础 41-50
- Java实现-合并k个排序链表
- WebService工作原理及实现
- 解决Eclipse RCP中Product工程打包时图片不显示以及中文乱码问题
- Ubuntu16.04 Hive安装配置
- PHP正则表达式语法
- c++中vector的用法详解
- 表空间,索引
- 处理Get方法传递中文参数出现中文乱码的问题
- Spring Boot之HelloWorld