📜  数据结构 |链表 |问题 4

📅  最后修改于: 2021-09-08 15:11:29             🧑  作者: Mango

以下哪种排序算法可用于以最小的时间复杂度对随机链表进行排序?
(A)插入排序
(B)快速排序
(C)堆排序
(D)归并排序答案: (D)
说明:合并排序和插入排序都可以用于链表。

链表缓慢的随机访问性能使得其他算法(如快速排序)表现不佳,而其他算法(如堆排序)则完全不可能。

由于合并排序的最坏情况时间复杂度为 O(nLogn) 并且插入排序为 O(n^2),因此首选合并排序。

有关使用链表的合并排序的实现,请参见以下内容。

https://www.geeksforgeeks.org/merge-sort-for-linked-list/
这个问题的测验