A、40
B、41
C、780
D、820
答案:C
解析:解析:对长度为n的战线性表进行冒泡排序,最坏情况下需要比较的次数为n(n-1)2。故对长度为40的线性表进行冒泡排序,最坏情况下需要比较的次数为40(40-1)/2=780。本题答案为C选项。
A、40
B、41
C、780
D、820
答案:C
解析:解析:对长度为n的战线性表进行冒泡排序,最坏情况下需要比较的次数为n(n-1)2。故对长度为40的线性表进行冒泡排序,最坏情况下需要比较的次数为40(40-1)/2=780。本题答案为C选项。
A. 6
B. 7
C. 48
D. 96
解析:解析:对于长度为n的有序线性表,在最坏情况下,二分法查找需要比较log2n次。故本题需要比较的次数为log297。由于log297>6,所以需要比较次数为7。本题答案为B选项。
A. 堆排序
B. 快速排序
C. 顺序查找
D. 寻找最大项
解析:解析:最坏情况下比较次数:堆排序为nlog2n,快速排序为t(n-1)2,顺序查找为n,寻找最大项为n-1。劫最坏情况下比较次数等于n(r-1)/2的是快速排序。本题答案为B选项。
A. 不会产生新的逆序
B. 只能消除一个逆序
C. 能消除多个逆序
D. 消除的逆序个数一定比新产生的逆序个数多
解析:解析:在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。希尔排序的基本思想是,先取一个整数(称为增量)d1<n ,把全部数据元素分成d1组,所有距离为d1倍数的元素放在一组中,组成了一个子序列,对每个子序列分别进行简单插入排序,然后取d2<d1重复上述分组和排序工作,直到di=1,即所有记录在一组中为止。希尔排序可以实现通过一次交换而消除多个逆序。本题答案为C选项。
A. 快速排序
B. 冒泡排序
C. 简单插入排序
D. 简单选择排序
解析:解析:在一个排列中,如果一对数的前后位黑与大小师序相反,即前面的数大于后面的数,那么它们就称为一个逆序。快速排序的思想是:从线性表中选取一个元素,设为T,将线性表中后面小于T的元素移到前面,而前面大于T的元素移到后面,结果就将线性表分成两部分(称两个子表),T插入到其分害线的位置处,这个过程称为线性表的分割,然后再用同样的方法对分割出的子表再进行同样的分割。快速排序不是对两个相邻元素进行比较,可以实现通过一次交换而消除多个逆序,但由于均与7(基准元素)比较,也可能会产生新的逆序。本题答案为A选项。
A. 顺序查找
B. 寻找最大项
C. 寻找最小项
D. 有序表的二分查找
解析:解析:最坏情况下比较次数:有序表的二分查找为log2n,顺序查找为n,寻找最大项为n-1,寻找最小项为n-1。故比较次数最少的是有序表的二分查找。本题答案为D选项。
A. 15
B. 55
C. 75
D. 105
解析:解析:对长度为n的钱线性表进行快速排序,最坏情况下需要比较的次数为n(n-1)2。故对长度为15的钱线性表进行快速排序,最坏情况下需要比较的次数为15(15-1)/2=105。本题答案为D选项。
A. 堆排序
B. 快速排序
C. 简单插入排序
D. 冒泡排序
解析:解析:最坏情况下比较次数:堆排序为nlog2n,快速排序为n(n-1)/2,简单插入排序为n(n-1)/2,冒泡排序为n(n-1)2。本题答案为A选项。
A. 19
B. 20
C. 90
D. 190
解析:解析:对长度为n的线线性表进行冒泡排序,最坏情况下需要比较的次数为n(n-1)2。故对长度为20的战线性表进行冒泡排序,最坏情况下需要比较的次数为20(20-1)/2=190。本题答案为D选项。
A. 堆排序
B. 寻找最大项
C. 顺序查找
D. 有序表的对分查找
解析:解析:最坏情况下时间复杂度:有序表的对分查找为O(log2n),寻找最大项为O(n-1),顺序查找为O(n),堆排序为O(nlog2n)。故最坏情况下时间复杂度最低的是有序表的对分查找。本题答案为D选项。
A. 只能顺序存储
B. 只能链式存储
C. 可以顺序存储也可以链式存储
D. 任何存储方式
解析:解析:能使用二分法查找(对分查找)的线线性表必须满足两个条件:①用顺序存储结构﹔②线性表是有序表。本题答案为A选项。