题目描述
合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。
示例:
1 | 输入: |
算法思路
已知K个有序链表,采用二路归并实现两个链表的合并,在此基础上,按照折半查找的思想,递归执行二路归并。
算法实现
1 | public class MergeKSortedLists23 { |
复杂度分析
时间复杂度:O($n\log_2n$)
空间复杂度:O($n$)
算法效率
执行用时: 11 ms, 在Merge k Sorted Lists的Java提交中击败了92.02% 的用户
内存消耗: 28.5 MB, 在Merge k Sorted Lists的Java提交中击败了80.66% 的用户