单选题插入排序是一种简单实用的工具,在对数组排序时,我们可能用二分查找,对要插入的元素快速找到在已经排好元素序列中的位置。下面的描述中正确的是()。A二分查找的时间复杂度为O(lgN),因此排序的时间复杂度为O(N*lgN)B二分查找的时间复杂度为O(N),因此排序的时间复杂度为O(N*lgN)C二分查找的时间复杂度为O(lgN),因此排序的时间复杂度为O(N*N)D二分查找的时间复杂度为O(N),因此排序的时间复杂度为O(N*N)
单选题
插入排序是一种简单实用的工具,在对数组排序时,我们可能用二分查找,对要插入的元素快速找到在已经排好元素序列中的位置。下面的描述中正确的是()。
A
二分查找的时间复杂度为O(lgN),因此排序的时间复杂度为O(N*lgN)
B
二分查找的时间复杂度为O(N),因此排序的时间复杂度为O(N*lgN)
C
二分查找的时间复杂度为O(lgN),因此排序的时间复杂度为O(N*N)
D
二分查找的时间复杂度为O(N),因此排序的时间复杂度为O(N*N)
参考解析
解析:
暂无解析
相关考题:
对一待排序序列分别进行直接插入排序和简单选择排序,若待排序序列中有两个元素的值相同,则()保证这两个元素在排序前后的相对位置不变。 A.直接插入排序和简单选择排序都可以B.直接插入排序和简单选择排序都不能C.只有直接插入排序可以D.只有简单选择排序可以
插入排序算法的主要思想是:每次从未排序序列中取出一个数据,插入到已排序序列中的正确位置,InsertSort 类的成员函数sort()实现了插入排序算法,请将画线处缺失的部分补充完整。class InsertSort{public:InsertSort(int*a0,int n0):a(a0),n(n0){}//参数组首地址,n 是数组元素个数void sort(){//此函数假设已排离序列初始化状态只包含a[0],未排序序列初始为a[1]?a[n-1]for (int i=1;iint j;for( [14] j0;--j){if(ta[j-1])break;a[j]=a[j-1];}a[j]=t;}}protected:int*a,n;//指针a 用于存放数组首地址,n 用于存放数组元素个数};
对具有n个元素的有序序列进行二分查找时,(61)。A.元素位置越靠近序列前端,查找该元素所需的比较次数越少B.查找序列中任何一个元素所需要的比较次数不超过[log2(n+1)]C.查找元素所需的比较次数与元素的位置无关D.元素位置越靠近序列后端,查找该元素所需的比较次数越少
每趟排序都从序列的未排好序的序列中挑选一个值最小(或最大)的元素,然后将其与未排好序的序列的第一个元素交换位置。此种排序法称为(54)。A.插入排序法B.选择排序法C.希尔排序法D.快速排序法
第四题 阅读以下说明、C函数和问题,回答问题1和问题2将解答填入答题纸的对应栏内。【说明】当数组中的元素已经排列有序时,可以采用折半查找(二分查找)法查找一个元素。下面的函数biSearch(int r[],int low,int high,int key)用非递归方式在数组r中进行二分查找,函数biSearch_rec(int r[],int low,int high,int key)采用递归方式在数组r中进行二分查找,函数的返回值都为所找到元素的下标;若找不到,则返回-1。【C函数1】int biSearch(int r[],int low,int high,int key)//r[low..high] 中的元素按非递减顺序排列//用二分查找法在数组r中查找与key相同的元素//若找到则返回该元素在数组r的下标,否则返回-1{ int mid; while((1)) { mid = (low+high)/2 ; if (key ==r[mid]) return mid; else if (key (2); else (3); }/*while*/ return -1;}/*biSearch*/【C 函数 2】int biSearch_rec(int r[],int low,int high,int key)//r[low..high]中的元素按非递减顺序排列//用二分查找法在数组r中查找与key相同的元素//若找到则返回该元素在数组r的下标,否则返回-1{ int mid; if((4)) { mid = (low+high)/2 ; if (key ==r[mid]) return mid; else if (key return biSearch_rec((5),key); else return biSearch_rec((6),key); }/*if*/ return -1;}/*biSearch_rec*/ 问题:4.1 (12分)请填充C函数1和C函数2中的空缺,将解答填入答题纸的对应栏内。 问题:4.2 (3分)若有序数组中有n个元素,采用二分查找法查找一个元素时,最多与( )个数组元素进行比较,即可确定查找结果。(7)备选答案:A.[log2(n+1)] B.[n/2] C.n-1 D.n
排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()A、折半插入排序B、直接插入排序C、归并排序D、选择排序
在对一组元素(64,48,106,33,25,82,70,55,93)进行直接插入排序时,当进行到要把第7个元素70插入到已经排好序的子表时,为找到插入位置,需进行()次元素间的比较(指由小到大排序)。A、6B、2C、3D、4
单选题在对一组元素(64,48,106,33,25,82,70,55,93)进行直接插入排序时,当进行到要把第7个元素70插入到已经排好序的子表时,为找到插入位置,需进行()次元素间的比较(指由小到大排序)。A6B2C3D4
单选题排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()A折半插入排序B直接插入排序C归并排序D选择排序
填空题在对10个记录的序列(9,35,19,77,2,10,53,45,27,68)进行直接插入排序时,当把第6个记录10 插入到有序表时,为寻找插入位置,元素间需比较()次。(按升序排序)