LeetCode Merge k Sorted Lists 解决报告
生活随笔
收集整理的这篇文章主要介绍了
LeetCode Merge k Sorted Lists 解决报告
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
https://oj.leetcode.com/problems/merge-k-sorted-lists/
归并K已经整理阵列,和分析算法的复杂。
上面的方法TLE了,上网查了一下注意到通过使用归并排序算法可将链表排序的时间复杂度缩减到的O(NlgN)。详细的计算公式就是:
归并K已经整理阵列,和分析算法的复杂。
解决报告:无论是不考虑优化,最简单的实现是要重新走路List<ListNode>。对当中每一个链表同当前链表做一遍类似于归并排序最后一步的merge操作。
算法复杂度是O(KN)
上面的方法TLE了,上网查了一下注意到通过使用归并排序算法可将链表排序的时间复杂度缩减到的O(NlgN)。详细的计算公式就是:
所以借鉴归并排序的方法,自顶向下,先递归的对链表的前半部分和后半部分进行归并排序,最后再merge。
下面代码顺利AC了,时间复杂度为:O(NlogK)
版权声明:本文博主原创文章,博客,未经同意不得转载。
总结
以上是生活随笔为你收集整理的LeetCode Merge k Sorted Lists 解决报告的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: mysql应用管理
- 下一篇: 关于项目中的日期提交