0

您有 n 个已排序的链表,每个链表的大小为 n。链表引用存储在数组中。将 n 个链表合并为单个排序链表的有效算法是什么?

因为它们都是排序的:

  1. 加入一个循环
  2. 检查所有已排序链表的第一个节点,并通过相互比较对它们进行排序。
  3. 继续到下一个节点并重复直到null被击中。

这是最有效的方法吗?

4

1 回答 1

0

只需将它们全部链接在一起(或将它们转储到一个列表中)并使用一般排序。这将为您提供 nlog(n) 性能。你的方式是n^2。

于 2012-06-24T04:53:08.980 回答