请选择 进入手机版 | 继续访问电脑版

理解递归

[复制链接]
小甜心 发表于 2021-1-3 11:59:07 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
新手如何自界说方法
数学里的函数与java里的方法
举个例子:
如 f(x)=x+3; 求f(4)=?
这个很简单 把4代入表达式即可 f(4)=3+3=6;
那么在java用方法怎么写呢?


运行效果为7;
写方法的时候,f(x)=x+3,把x作为形参变量写进括号里,“=”背面的表达式写进方法体;
最后在main 方法里调用这个方法 f(4);即可求得f(4)的值。
既然我们知道数学里f(x)为何物,何尝不知java 方法为何物呢? F(x)对x执行一些利用,java方法对变量执行一些利用。
2.
再来看一个例子:
F(x,y)=x+y; 求得F(2,3)=?
这也很简单 F(2,3)=2+3=5 //代入即可
对于java方法不外是在括号里再添加一个形参变量 “int y”,然后对方法体稍做修改即可。
方法之间的调用
f(x)=g(x)+3, g(x)=x+3; 求f(3)=?
依旧简单,待入即可,

  • g(3)=3+3=6;
  • f(3)=6+3=9;
    再来写方法,这里涉及到了两个函数 f(t) ,g(x),那么我们写两个方法
    分别为


运行效果为9,
依旧如此,x作为形参变量写进括号,=号背面表达式写进方法体,表达式有别的函数,所以就在f(x)的方法体中调用g(x).
关于递归

于是我们写出了下面的这些等式,
f(5)=f(4)+1
f(4)=f(3)+1
f(2)=f(1)+1
f(1)= 1
得出f(2)=1+1,f(3)=2+1,f(4)=3+1,f(5)=4+1=5,最终效果
解答过程是这样的

可以明确为一个递归的过程 ,递与归
来写java方法吧


运行效果为5,
依旧如此,将x作为形参变量写进括号,=号背面表达式写进方法体,这里表达式中有f(x),
那就调用f(x),自己调用自己? 没错。
然后这是一个分段函数,当x==1时,f(x)1;
这里需要添加判定条件,即添加一个if(x1)举行判定即可,满足条件则执行。即执行return1;
你对java方法的明确有没有更好呢^^.

来源:https://blog.csdn.net/weixin_50551949/article/details/112006836
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )