递归和迭代有什么区别?简述区别

KLQ 2020-06-01 10:45:41 java常见问答 5176

你对于递归和迭代都了解吗?那么你是否知道递归和迭代的区别呢?那么下面就和小编一起来了解一下,这两者之间的区别究竟是怎样的吧!

一、递归和迭代区别

首先我们要讲到的就是两者之间的概念。

首先,程序调用自身的编程技巧叫做递归,函数自己调用自己。

一个函数在它的定义当中,直接或者是间接的调用自身的一种方法。

它经常将一个大型的复杂的问题转化为一个和原来的问题相似的但是规模较小的问题来解决。

这样能够极大的减小代码量。

递归能力在于用有限的语句来定义对象的无限集合

迭代利用变量的原值推算出变量的一个新值。

假如,递归是自己调用自己的话,那么就是A不停的调用B。

在递归当中是一定有迭代的,可是,在迭代当中,却不一定存在递归。

大部分的都是可以相互进行转换的。

可以用迭代的就不用递归,递归调用函数,比较的浪费空间,除此之外,递归还非常容易造成堆栈的溢出。

递归和迭代都是循环的一种。

简单的来讲的话,递归是重复调用函数自身实现循环,迭代是函数内某段代码实现循环。

迭代和普通循环区别:

循环代码当中,参与运算的变量同时是保存结果的变量,眼前,保存的结果作为下一次循环计算的初始值。

在递归循环当中,在遇到了满足终止条件的时候,逐层返回来结束。

迭代的话就是使用计数器来结束循环。

当然了,在大多数的情况之下,都是多种循环混合采用,这里的话,要依据具体的需求。

关于递归和迭代之间的区别你都了解了吗?看完上面的内容,你应该可以理解了吧。

好啦,假如你还想了解更多这方面的基础知识,请继续的关注奇Q工具网的java入门栏目来进行了解吧。

推荐阅读:

java简单编程题问第五个人多少岁?java递归算法经典实例

sessionstorage和localstorage的区别是什么?有什么区别?

线程池submit和execute区别有哪些?