一个递归算法必须包括()。

题目
单选题
一个递归算法必须包括()。
A

递归部分

B

终止条件和递归部分

C

迭代部分

D

终止条件和迭代部分

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

将一个递归算法改为对应的非递归算法时,通常需要使用______。

A.栈

B.队列

C.循环队列

D.优先队列


正确答案:A
解析:本题考查的是栈的典型应用,在计算机语言的实现以及将递归过程转变为非递归过程的处理中,通常用栈来处理。栈的应用还包括表达式求值、括号匹配等。

第2题:

下面描述中,不正确的是( )。

A.递归法的关键是必须有一个递归终止的条件。

B.递归算法要求语言具有反复自我调用子程序的能力。

C.对于同一个问题,递推算法比递归算法的执行时间要长。

D.递推算法总可以转换为一个递归算法。


参考答案:C

第3题:

●若一个问题的求解既可以用递归算法,也可以用递推算法,则往往用 (26) 算法,因为 (27) 。

(26) A.先递归后递推

B.先递推后递归

C.递归

D.递推

(27) A.递推的效率比递归高

B.递归宜于问题分解

C.递归的效率比递推高


正确答案:D,A
【解析】递推算法是一种常用算法,它的基本思想是:对本身具有递推关系的问题,其初始解已知或者很容易得到,然后从i=0开始,逐级从i=0,1,2,…进行递推,每次是从上一次递推的结果开始,利用递推关系,求出下一次的递推的结果,直到符合要求为止。递归算法相对递推算法要复杂得多。递归算法中是递推分解问题,然后再将最简单情况的解回归成大问题的解决。由于递归会引起一系列函数调用,有不少重复计算,其执行的效率也较低。
因此,若某问题既能用递归算法求解,又能用递推算法求解时,常常是使用递推方法求解要容易,效率高得多。

第4题:

递归算法。


正确答案:
    

第5题:

将一个递归算法改为对应的非递归算法时,通常需要使用(44)。

A.优先队列

B.队列

C.循环队列

D.栈


正确答案:D
解析:将一个递归算法改为对应的非递归算法时,通常需要使用的数据结构是栈。

第6题:

设计一个递归问题的非递归算法通常需要设置()结构。

A、线性表

B、数组

C、堆栈

D、队列


参考答案:C

第7题:

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

A.先递归后递推

B.先递推后递归

C.递归

D.递推


正确答案:D

第8题:

●将一个递归算法改为对应的非递归算法时,通常需要使用 (44) 。

(44) A.优先队列

B.队列

C.循环队列

D.栈


正确答案:D
【解析】将一个递归算法改为对应的非递归算法时,通常需要使用的数据结构是栈。

第9题:

设计递归算法有两点最为关键()和()。

A、确定递推公式

B、确定边界(终了)条件(递归出口)

C、每次递归调用,都必须向基本条件前进

D、如果结果已知,那么,不用再重复调用递归


参考答案:A,B

第10题:

如果一个算法显式地调用自己则称为 ( )

A.直接递归

B.自用递归

C.间接递归

D.外用递归


正确答案:A

更多相关问题