| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 445 人关注过本帖
标题:[求助]这两道题目怎么做啊??
只看楼主 加入收藏
一猪冲天
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-10-21
收藏
 问题点数:0 回复次数:2 
[求助]这两道题目怎么做啊??

最近新学<<数据结构与程序设计>>,有两道题目不会:
1. 编写反向显示单链表各结点的值的递归算法。单链表为:
A,V,U,E,B,C,L,D,X,Y,M,H

2.二、已知阶乘函数定义如下:
1 当n = 0时
F(n)=
n×F(n-1) 当n>0时
⑴编写求F(n)的递归算法。
⑵采用循环结构消除递归,编写求F(n)的非递归算法。
⑶采用栈消除递归,编写求F(n)的非递归算法。
设n = 10。

用C++写代码,求各位大大指点

搜索更多相关主题的帖子: 程序设计 
2006-10-21 19:43
luoxian_2003
Rank: 1
等 级:新手上路
威 望:2
帖 子:163
专家分:0
注 册:2006-2-22
收藏
得分:0 
2

#include "stdafx.h"
#include "iostream.h"
long fun1(int n)//递归算法
{
if(n<0)
return -1;
if(n==0)
return 1;
return n*fun1(n-1);
}

long fun2(int n) //循环非递归算法
{
if(n<0)
return -1;
if(n==0)
return 1;
int k=1;
while(n>0)
{
k*=n--;
}
return k;
}
void main()
{
int m=10;
cout<<fun1(m)<<endl;
cout<<fun2(m)<<endl;
}


至于栈消除递归不知道到底怎么写?是把数字存在栈里然后 取出来么

天地有正气,凛烈万古存。
2006-10-21 21:03
一猪冲天
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-10-21
收藏
得分:0 
多谢luoxian_2003了,不胜感激
恩,我和同学认为2题第3问确实很白痴,极有可能如楼上所讲
2006-10-22 01:11
快速回复:[求助]这两道题目怎么做啊??
数据加载中...
 
   



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

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