| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1072 人关注过本帖
标题:函数的递归调用。求解!
只看楼主 加入收藏
luojie5683
Rank: 2
来 自:重庆
等 级:论坛游民
帖 子:69
专家分:49
注 册:2011-10-10
结帖率:70%
收藏
已结贴  问题点数:30 回复次数:21 
函数的递归调用。求解!
#include"stdio.h"
int f(int n)
{
    if(n==1||n==0)return 1;
    else
        return (3*f(n-2)+2*f(n-1));
}
main()
{
    int m;
    m=f(5);
    printf("%d\n",m);
}
程序结果为121,怎么来的,程序是怎么运行的?求高手解释一下。感激不尽。
搜索更多相关主题的帖子: include return 
2011-12-22 20:35
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
收藏
得分:3 
回复 楼主 luojie5683
咱也是初学者,相当于一个递推数列:F(n)=3*F(n-2)+2*F(n-1),并且F(0)=F(1)=1。
2011-12-22 21:02
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:3 
你不懂什么叫递归,先看书,先弄懂最简单的递归

总有那身价贱的人给作业贴回复完整的代码
2011-12-22 21:02
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:3 
f(0) = 1;
f(1) = 1;
f(n) = 2 * f(n - 1) + 3 * f(n - 2)

递归的执行过程楼主自己看书吧。我的兴趣在于,谁能把这个递归函数展开成非递归的形式?

重剑无锋,大巧不工
2011-12-22 21:03
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
收藏
得分:0 
回复 4楼 beyondyf
经过运算,这个递推可以化简成f(n)+f(n-1)=2*3^(n-1).
2011-12-22 21:33
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
我说的是非递归形式。继续

重剑无锋,大巧不工
2011-12-22 21:42
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
收藏
得分:0 
回复 6楼 beyondyf
当n为偶数时,f(n)=(3^n+1)/2;当为奇数时f(n)=(3^n-1)/2。
2011-12-22 22:14
beyondyf
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:3282
专家分:12654
注 册:2008-1-21
收藏
得分:0 
嗯,还不错。不过没必要分奇偶数。
f(n) = (3^n + (-1)^n)/2就好了。

重剑无锋,大巧不工
2011-12-22 22:23
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
收藏
得分:0 
嘿,也是。
2011-12-22 22:30
天天涯涯
Rank: 4
等 级:业余侠客
帖 子:215
专家分:267
注 册:2011-10-17
收藏
得分:0 
在编程实现上,分奇偶数貌似更好实现。
2011-12-22 22:32
快速回复:函数的递归调用。求解!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024585 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved