为什么快速排序不适合用链表 以单链表为存储结构实现直接选择排序的算法?

以单链表为存储结构实现直接选择排序的算法?单向链表相关操作实现功能:1。创建新的链表。2. 插入节点。3. 删除节点。4. Insert方法对链表进行排序(从小到大)。5. 按选择方法排序链表(从小到

以单链表为存储结构实现直接选择排序的算法?

单向链表相关操作实现功能:1。创建新的链表。

2. 插入节点。

3. 删除节点。

4. Insert方法对链表进行排序(从小到大)。

5. 按选择方法排序链表(从小到大)。

6. 显示当前链表。0退出程序。有关代码,请参阅参考资料

O(nlogn)。虽然并不是所有的高级排序算法都适用于单链表,但它们部分适用,例如合并排序、希尔排序和快速排序的具体实现。

即使您不考虑所有这些算法,还有另一个简单而粗糙的方法:

将链表复制到数组中

对数组进行排序

将数组还原到链表中

这三个步骤的复杂度是O(n nlogn)=O(nlogn)