网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)
用递归算法实现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个元素的有序表采用二分查找法,则算法的时间复杂性为()A O(n)B O(n2)C O(1)D O(log2n)

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