用递归算法实现n个相异元素构成的有序序列的二分查找,采用一个递归工作栈时,该栈的最小容量应为()。

用递归算法实现n个相异元素构成的有序序列的二分查找,采用一个递归工作栈时,该栈的最小容量应为()。


参考解析

解析:

相关考题:

●若一个问题的求解既可以用递归算法,也可以用递推算法,则往往用 (26) 算法,因为 (27) 。(26) A.先递归后递推B.先递推后递归C.递归D.递推(27) A.递推的效率比递归高B.递归宜于问题分解C.递归的效率比递推高

●将一个递归算法改为对应的非递归算法时,通常需要使用 (44) 。(44) A.优先队列B.队列C.循环队列D.栈

将一个递归算法改为对应的非递归算法时,通常需要使用______。A.栈B.队列C.循环队列D.优先队列

对具有n个元素的有序序列进行二分查找时,(61)。A.元素位置越靠近序列前端,查找该元素所需的比较次数越少B.查找序列中任何一个元素所需要的比较次数不超过[log2(n+1)]C.查找元素所需的比较次数与元素的位置无关D.元素位置越靠近序列后端,查找该元素所需的比较次数越少

使用二分查找算法在一个有序序列中查找一个元素的时间复杂度为()A.O(N)B.O(logN)C.O(N*N)D.O(N*logN)

若一个问题的求解既可以用递归算法,也可以用递推算法,则往往用(14)算法,因为(15)。A.先递归后递推B.先递推后递归C.递归D.递推

将一个递归算法改为对应的非递归算法时,通常需要使用(44)。A.优先队列B.队列C.循环队列D.栈

用折半查找方式查找N个元素的数组,当查找成功时,其递归执行程序时递归调用的最大次数是(11)。A.B.C.D.

用C语言写一个递归算法求N!;(华为面试题)

对具有n个元素的有序表采用二分查找,则算法的时间复杂性为______。A.O(n)B. O(n2)C. O(1)D. O(log2n)

● 对 n 个元素的有序表 A[1..n]进行二分(折半)查找,则成功查找到表中的任意一个元素时,最多与A 中的 (39) 个元素进行比较。(39)

用递归算法实现n个相异元素构成的有序序列的二分查找,采用一个递归工作栈时,该栈的最小容量应为______。A.nB.n/2C.log2nD.log2(n+1)

第四题 阅读以下说明、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

在有n个无序无重复元素值的数组中查找第i小的数的算法描述如下:任意取一个元素r,用划分操作确定其在数组中的位置,假设元素r为第k小的数。若i等于k,则返回该元素值;若i小于k,则在划分的前半部分递归进行划分操作找第i小的数;否则在划分的后半部分递归进行划分操作找第k-i小的数。该算法是一种基于()策略的算法。A、分治B、动态规划C、贪心D、回溯

若一个问题的求解既可以用递归算法,也可以用递推算法,则往往用__(1)__算法,因为__(2)__。空白(1)处应选择()A、先递归后递推B、先递推后递归C、递归D、递推

栈的应用很广泛,递归问题的解决都要靠栈来完成,以下可以递归实现的有()。A、斐波那契数列B、n!(n的阶乘)C、汉诺塔问题D、迷宫问题

递归通常用()来实现。A、有序的线性表B、队列C、栈D、数组

将递归算法转换成对应的非递归算法时,通常需要使用()来保存中间结果。A、队列B、栈C、链表D、树

以二分查找方法从长度为n的线性有序表中查找一个元素时,时间复杂度为()。

如果使用循环结构实现计算n!的算法是()。A、递归B、迭代C、排序D、查找

数据结构里,栈的应用很广泛,递归问题的解决都要靠栈来完成,以下可以递归实现的有()。A、斐波那契数列B、n!(n的阶乘)C、汉诺塔问题D、迷宫问题

单选题如果使用循环结构实现计算n!的算法是()。A递归B迭代C排序D查找

单选题若一个问题的求解既可以用递归算法,也可以用递推算法,则往往用__(1)__算法,因为__(2)__。空白(2)处应选择()A递推的效率比递归高B递归宜于问题分解C递归的效率比递推高D递推宜于问题分解

单选题若一个问题的求解既可以用递归算法,也可以用递推算法,则往往用__(1)__算法,因为__(2)__。空白(1)处应选择()A先递归后递推B先递推后递归C递归D递推

填空题以二分查找方法从长度为n的线性有序表中查找一个元素时,时间复杂度为()。

单选题对具有n个元素的有序表采用二分查找法,则算法的时间复杂性为()AO(n)BO(n2)CO(1)DO(log2n)

单选题递归通常用()来实现。A有序的线性表B队列C栈D数组