更多"在排序算法中每一项都与其他诸项进行比较,计算出小于该项的项的个数,以确"的相关试题:
[单项选择]若排序前后关键字相同的两个元素相对位置不变,则称该排序方法是稳定的。下列排序算法中,有()种排序算法是稳定的:归并排序、快速排序、希尔排序、堆排序、基数排序、直接插入排序、冒泡排序、直接选择排序。
A. 3
B. 4
C. 5
D. 6
[单项选择]采用下列排序算法对n个元素进行排序,其排序趟数肯定为n-1趟的排序方法有()。
A. 选择和插入
B. 冒泡和快速
C. 插入和快速
D. 选择和冒泡
[单项选择]下面排序算法中,平均排序速度最快的是( )。
A. 冒泡排序法
B. 选择排序法
C. 交换排序法
D. 推排序法
[判断题]常用的排序算法中冒泡法是对选择排序法的改进。
[单项选择]下列排序算法中,第一趟排序后,任一元素都不能确定其最终位置的算法是()。
A. 选择
B. 插入
C. 冒泡
D. 快速
[单项选择]直接插入排序算法的时间复杂度为()。
A. O(n)
B. O(n2)
C. O(log2n)
D. O(1)
[单项选择]如果待排序序列中两个元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。()是稳定的排序方法,因为这种方法在比较相邻元素时,值相同的元素并不进行交换。
A. 冒泡排序
B. 希尔排序
C. 快速排序
D. 简单选择排序
[单项选择]若待排序的记录数目较少且已按关键字基本有序,则宜采用()排序算法。
A. 快速排序
B. 插入排序
C. 选择排序
D. 冒泡排序
[单项选择]如果在待排序序列中有两个元素具有相同的值,排序使它们的位置发生颠倒,则称该排序算法是不稳定的,下列哪种排序算法是不稳定的 ( )
A. 堆排序
B. 归并排序
C. 基数排序
D. 起泡排序
[单项选择]以下关于排序算法的叙述中,正确的是()。
A. 冒泡排序法中,元素的交换次数与元素的比较次数一定相同
B. 冒泡排序法中,元素的交换次数不少于元素的比较次数
C. 简单选择排序中,关键字相同的记录在排序前后的相对位置一定不变
D. 简单选择排序中,关键字相同的记录在排序前后的相对位置可能交换
[单项选择]下列排序算法中,()排序在某趟结束后不一定选出一个元素放到其最终的位置上。
A. 选择
B. 冒泡
C. 归并
D. 堆
[填空题] 在下面冒泡排序算法中填入适当内容,以使该算法在发现有序时能及时停止。 bubble(R) Rectype R[n]; {int i,j,exchang; Rectype temp; i=1; do {exchang=False; for(j=n;j>=¬¬i+1 ;j- -) if(R[j]
[单项选择]冒泡排序算法在最好的情况下的元素交换次数为( )。
A. 0
B. 1
C. 元素个数
D. 元素个数的2倍
[填空题] 完成下列折半插入排序算法。 Void binasort(struct node r[MAXSIZE],int n) {for(i=2;i<=n;i++){ r[0]=r[i];low=1;high=i-1; while(low<=high){ mid=(low+high)/2; if(r[0].key else low=mid+1 ; } for(j=i-1;j>=low;j- -)r[j+1]=r[j] ; r[low]=() ; } }