若要求对大小为n的数组进行排序的时间复杂度为 O(nlog2n),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是【 】
A、快速排序
B、归并排序
C、堆排序
D、冒泡排序
若要求对大小为n的数组进行排序的时间复杂度为 O(nlog2n),且是稳定的(即如果待排序的序列中两个数据元素具有相同的值,在排序前后它们的相对位置不变),则可选择的排序方法是【 】
A、快速排序
B、归并排序
C、堆排序
D、冒泡排序
B快速排序、归并排序、堆排序是时间复杂度为 O(nlog2n)的排序方法,冒泡排序的时间复杂度是 O(n2)。快速排序的过程主要是划分操作,划分是以基准元素为界,从序列的两端向中间扫描,将大于基准元素者往后端移动(或交换),不大于基准元素者向前端移动(或交换),移动元素时不考虑所涉及两个位置之间的其他元素,这样就不能保证序列...
查看完整答案设有字符串S= "software",其长度为3的子串数目为【 】。
在解决计算机与打印机之间速度不匹配的问题时,通常设置一个打印数据缓冲区,计算机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区取出数据。因此,该缓冲区的数据结构应该是【 】。
含有n个元素的线性表采用顺序存储,等概率删除其中任一个元素,平均需要移动【 】个元素。
设数组A[1..m,1..n]的每个元素占用1个存储单元,对于数组元素A[i,j](1≤证≤m,1≤j≤n),在按行存储方式下,其相对于数组空间首地址的偏移量为【】
设数组A[1..m,1..n]的每个元素占用1个存储单元,对于数组元素A[i,j](1≤证≤m,1≤j≤n),在按列存储方式下,其相对于数组空间首地址的偏移量为【 】。
队列采用如下图所示的循环单链表表示,左图表示队列为空,右图为e1、e2、e3依次入队列后的状态,其中,rear指针指向队尾元素所在结点,size为队列长度。以下叙述中,正确的是【 】。
快速排序的速度在所有排序方法中为最快,而且所需附加的空间也最少。
若需在O(log2n)的时间内完成对数组的排序,且要求排序是稳定的,则可选择的排序方法是【 】。
在文件“局部有序”或文件长度较小的情况下,最佳内部排序的方法是【 】。
下述排序算法中,所需辅助存储量最多的是__________,所需辅助存储量最少的是__________,平均速度最快的是__________。A. 快速排序 B. 归并排序 C. 堆排序
如果只想得到1000个元素组成的序列中第5个最小元素之前的部分排序序列,用【 】方法最快
若有n个元素已构成一个小根堆,那么如果增加一个元素Kn+1,请用文字简要说明如何在log2n的时间内将其重新调整为一个堆。
如果待排序序列中两个数据元素具有相同的值,在排序前后它们的位置发生颠倒,则称该排序算法是不稳定的,【 】就是不稳定的排序算法。