Java递归

无论在哪里相信大家都听说过递归,我也是个初学者,一开始我也是看不懂的,后来才慢慢看懂,现在我就来记录一下我所了解的Java递归是什么。
递归:程序调用自身的编程技巧称为递归(recursion),它做为一种算法在程序设计语言中广泛应用。在Java中的递归是允许方法调用自身调用的属性。
这样说你可能看不懂,我都是看了例子才懂的。递归的典型例子是数字的阶乘还有斐波那契数列。在看例子之前我们先要明白递归要什么条件才能用。
第一, 我们先要知道递归循环里面的参数是用来干什么的,比如写阶乘的递归是吧,我们想求5的阶乘,那么这个参数的作用就是用来求5的阶乘。n=5
在这里插入图片描述
第二, 递归是一定要结束条件的,要不然就会一直调用自身进入死循环。所以我们要找出当参数是什么的时候,递归才会结束返回结果。
在这里插入图片描述
第三,我们还要找出它的等价关系式,这个关系式就是用来缩小范围的,这个可能一开始无法找出来,不过没关系,我们做多点递归的题的时候就懂了。
在这里插入图片描述
了解了这三个条件,那么递归你也了解的差不多了。下面就看看例子了。
例子一:阶乘
在这里插入图片描述
例子二:斐波那契数列
斐波那契数列的是这样一个数列:1、1、2、3、5、8、13、21、34…,即第一项 f(1) = 1,第二项 f(2) = 1…,第 n 项目为 f(n) = f(n-1) + f(n-2)。求第 n 项的值是多少。
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值