程序设计(2023年暨南大学

试编写一个算法,在链式存储结构上实现直接插入排序算法。

答案解析

暂无答案

讨论

算法的时间复杂度不是O(nlogn)的算法是【 】

冒泡排序在初始关键字序列为逆序的情况下执行的交换次数最多。

下列排序算法中,哪些时间复杂度不会超过nlogn【 】。

初始序列为1 8 6 2 5 4 7 3一组数采用堆排序,当建堆(小根堆)完毕时,堆所对应的二叉树中序遍历序列为【 】。

对n个关键码构成的序列采用直接插入排序法进行升序排序的过程是:在插入第i个关键码ki时,其前面的 i-1 个关键码已排好序,因此令k与 ki-1、ki-2、…,依次比较,最多到 k1为止,找到插入位置并移动相关元素后将ki插入有序子序列的适当位置,完成本趟(即第 i-1 趟)排序。以下关于直接插入排序的叙述中,正确的是【 】 。

若需在O(log2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是【 】。

在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是【 】。

下述排序算法中,所需辅助存储量最多的是__________,所需辅助存储量最少的是__________,平均速度最快的是__________。A. 快速排序 B. 归并排序 C. 堆排序

若有n个元素已构成一个小根堆,那么如果增加一个元素Kn+1,请用文字简要说明如何在log2n的时间内将其重新调整为一个堆。

如果待排序序列中两个数据元素具有相同的值,在排序前后它们的位置发生颠倒,则称该排序算法是不稳定的,【 】就是不稳定的排序算法。