【LeetCode】 023. Merge k Sorted Lists

原创 2017年01月04日 07:06:45

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

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
public class Solution {
    public ListNode mergeKLists(ListNode[] lists) {
        if (lists.length == 0) {
            return null;
        }
        PriorityQueue<ListNode> list = new PriorityQueue<ListNode>(new Comparator<ListNode>() {
            @Override
            public int compare(ListNode n1, ListNode n2) {
                return n1.val - n2.val;
            }
        });
        ListNode temp = new ListNode(0);
        ListNode res = temp;
        for (ListNode subList : lists) {
            if (subList != null) {
                list.add(subList);
            }
        }
        while (!list.isEmpty()) {
            temp.next = list.poll();
            temp = temp.next;
            if (temp.next != null) {
                list.add(temp.next);
            }
        }
        return res.next;
    }
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

LeetCode 23: Merge K Sorted Lists

Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity. ...
  • sunao2002002
  • sunao2002002
  • 2015年05月31日 02:04
  • 3424

LeetCode Merge k Sorted Lists 解题报告

合并K个已排序的数组,并分析整个算法的复杂度。 最朴素的方法TLE,借鉴归并排序的算法顺利AC,算法时间复杂度:NlogK...
  • worldwindjp
  • worldwindjp
  • 2014年10月11日 15:23
  • 8258

【LeetCode】23. Merge k Sorted Lists 基于Java的解法

23. Merge k Sorted Lists Total Accepted: 88102 Total Submissions: 372066 Difficulty: Hard Merge k...
  • Jin_Kwok
  • Jin_Kwok
  • 2016年06月04日 00:46
  • 1555

[Leetcode]23. Merge k Sorted Lists @python

题目Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity....
  • qian2729
  • qian2729
  • 2016年01月16日 15:32
  • 542

Merge k Sorted Lists -- LeetCode

原题链接: http://oj.leetcode.com/problems/merge-k-sorted-lists/  这道题目在分布式系统中非常常见,来自不同client的sorted list要...
  • linhuanmars
  • linhuanmars
  • 2014年02月25日 09:45
  • 26059

LeetCode 23 Merge k Sorted Lists(合并K个已排序链表)

翻译合并K个已排序的链表,并且将其排序并返回。 分析和描述其复杂性。原文Merge k sorted linked lists and return it as one sorted list. An...
  • NoMasp
  • NoMasp
  • 2015年11月12日 17:30
  • 3373

LeetCode-23-Merge-k-Sorted-Lists Python倒循环

这个题本来应该用类似归并排序的思想的,然而我直接暴力了一发就过了。。。不明觉厉 # Definition for singly-linked list. # class ListNode(object...
  • qdbszsj
  • qdbszsj
  • 2017年09月11日 13:50
  • 249

[LeetCode] 023. Merge k Sorted Lists (Hard) (C++/Java/Python)

[LeetCode] 023. Merge k Sorted Lists (Hard) (C++/Java/Python)
  • hcbbt
  • hcbbt
  • 2015年03月05日 11:19
  • 2552

【leetcode c++】21 Merge Two Sorted Lists

Merge two sorted linked lists and return itas a new list. The new list should be made by splicing to...
  • hqq39
  • hqq39
  • 2015年06月18日 13:37
  • 426

K链表合并 Merge k Sorted Lists

思想:分布式常见题型。 刚开始的思路:逐一合并,合并的时间复杂度用O(N) ——> TLE ListNode *mergeKLists(vector &lists) { ...
  • yeruby
  • yeruby
  • 2015年04月20日 20:05
  • 2941
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【LeetCode】 023. Merge k Sorted Lists
举报原因:
原因补充:

(最多只允许输入30个字)