java中什么是递归
![](https://img.haomeiwen.com/i15038640/cb02c50d585c389f.jpg)
什么是递归
递归做为一种算法在程序设计语言中广泛应用,它是指函数/过程/子程序在运行过程中直接或间接调用自身而产生的重入现象。
递归算法一般用于解决三类问题:
a.数据的定义是按递归定义的。(Fibonacci(斐波那契)函数)
b.问题解法按递归算法实现。(回溯)
c.数据的结构形式是按递归定义的。(树的遍历,图的搜索)
学习视频教程分享:java教学视频
例子:
这是一个排列的例子,它所做的工作是将输入的一个字符串中的所有元素进行排序并输出
例如:你给出的参数是”abc” 则程序会输出: abc acb bac bca cab cba a
算法的出口在于:low=high也就是现在给出的排列元素只有一个时。
算法的逼近过程:先确定排列的第一位元素,也就是循环中i所代表的元素, 然后low+1开始减少排列元素,如此下去,直到low=high
示例如下:
![](https://img.haomeiwen.com/i15038640/1ad668f585ad3977.png)
相关文章教程推荐:java编程入门
网友评论