4.试将折半查找的算法改写成递归算法。Int bisearch (sqlist L,int low, int high , elemtype x ) {If (low>high) return( 0 );else {if (L.data[mid]= =x) return (mid);else if (L.data[mid]>x) bisearch(L,low,mid-1,x);else bisearch(L,mid+1,high,x);}}//bisearch
![](/upload/20220827/c85071da6ff0aadc10ebce6c25bb4f0d.png)
相似题目
-
在有n个无序无重复元素值的数组中查找第i小的数的算法描述如下:任意取一个元素r,用划分操作确定其在数组中的位置,假设元素r为第k小的数。若i等于k,则返回该元素值;若i小于k,则在划分的前半部分递归进行划分操作找第i小的数;否则在划分的后半部分递归进行划分操作找第k-i小的数。该算法是一种基于()策略的算法。
-
设算法A的时间复杂度可用递归式 https://assets.asklib.com/psource/2016090911351645380.jpg 表示,算法B的时间复杂度可用递归 https://assets.asklib.com/psource/201609091135258930.jpg 表示,若要使得算法B渐进地快于算法A,则a的最大整数为()
-
有序表为{1,2,4,6,10,18,20,32},用课本中折半查找算法查找值18,经()次比较后成功查到。
-
以下函数在a[0]到a[n-1]中,用折半查找算法查找关键字等于k的记录,查找成功返回该记录的下标,失败时返回-1,完成程序中的空格。https://assets.asklib.com/images/image2/2018072516232816916.jpg
-
递归调用算法与相同功能的非递归算法相比,主要问题在于重复计算太多,而且调用本身需要分配额外的空间和传递数据和控制,所以时间与空间开销通常都比较大。
-
凡是递归定义的数据结构都可以用递归算法来实现它的操作。
-
以下函数在a[0]到a[n-1]中,用折半查找算法查找关键字等于k的记录,查找成功返回该记录的下标,失败时返回-1,完成程序中的空格。https://assets.asklib.com/images/image2/2018072511504033073.jpg
-
迭代和递归是两种表示重复做某件事情的算法描述手段,理论上说,递归总可以改造成迭代来完成相应的工作。
-
将递归算法转换为非递归算法时,通常需要使用( )。
-
图的广度优先搜索算法通常采用非递归算法求解。( )
-
1.实现递归函数必须有递归算法和递归终止条件。
-
与其它算法类似,searchIn()算法的递归版(教材186页代码7.3)也存在效率低下的问题。试将该算法改写为迭代形式。请注意保持出口时返回值和hot的语义。
-
【判断题】递归算法是直接或间接地调用自身的算法。
-
试写出求递归函数F(n)的递归算法,并消除递归:
-
试将下列递推过程改写为递归过程。
-
【Test-9-2】下面算法的功能是:编写一个递归算法实现在...
-
6、折半搜索算法也称二分查找算法,是一种在有序数据集中查找某一特定元素的搜索算法。折半搜索要求数据集中的结点按关键字值升序或降序排列。折半搜索算法的基本原理是:首先将待查值与有序数据集的中间项进行比较,以确定待查值位于有序数据集的哪一半,然后将待查值与新的有序数据集的中间项进行比较。循环进行,直到相等为止。采用折半搜索算法在一个有10000件商品(有序排列)的超市中查找一件特定的商品,最多只需要查找的次数是 ()
-
问题解法按递归算法实现的问题适用于递归求解。()
-
将折半查找的算法改写为递归算法。
-
算法填空二叉搜索树的查找——递归算法:bool Find(){return false;} //查找失败else {if(){ item=BST->data;//查找成功return;}else if(){return Find();}else {return Find();}}//if}
-
求自然数1到n的和的递归定义如下: sum(1)=1 若n=1 sum(n)=sum(n-1)+n; 若n>1 下列定义的方法的功能是用递归的算法完成自然数1到n的累加和,请补充程序。 int sum (int num if(num = =1)return1; else return 【9】
-
递归算法设计的关键在于找出递归关系和递归终止条件()
-
设计动态规划算法的步骤为:1)找出最优解的性质,并刻画其结构特征;2)递归的定义最优值;3);4)计算最优值得到的信息,构造最优解()
-
13、用二分查找算法在列表[1,2,3,4,5,6,7,8,9]中搜索关键字10, 查找的时候与目标项10做比较的次数是()?
推荐题目
- 经营疫苗的药品批发企业应当具有以下条件()
- 何时进行ISO9141、CANbus或者J1850(SCP)系统的网络测试?()
- 漫射式喷头在喷灌过程中喷头的所有部件都是()。
- 企业必须在安全带使用达到规定年限时,每批次中随机抽取2条安全带送检,只要有一条不合格,全批次安全带必须停止使用、报废。
- HUB是一个基本的共享设备,其实质是一个(),主要提供信号放大盒中转的功能。
- 核膜不具备的功能是( )。
- CR300AF型动车组在进行断路器复位时,必须在断开断路器5s以后再闭合。()
- 为了防止事故扩大,在紧急情况下可不需等待调度指令将由于误碰跳闸的断路器立即合上,然后向调度汇报
- 文昌发射场的发射塔架下方有一个大坑名为导流槽,它的作用是什么?()
- 可作片剂的水溶性润滑剂的是可作片剂的水溶性润滑剂的是()