【题目描述】


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



【题目翻译】


给定k个有序链表,将其合并为一个有序的链表,并分析复杂度。



【解题思路】


  • 利用分治的思想把合并k个链表分成两个合并k/2个链表的任务,一直划分,直到任务中只剩一个链表或者两个链表。

  • 假设每个链表的平均长度为n,则T(k,n) = 2T(k/2,n) + O(nk),很简单可以推导得到算法复杂度为O(nklogk)。




【本题答案】


【每天一道编程系列-2018.2.6】(Ans)

相关文章: