一道面试题!

zhnzzy 2007-01-16 01:37:38
一列数的规则如下:1、1、2、3、5、8、13、21、34...........求第30位数是多少,请用递归算法实现,C#语言编写
...全文
292 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
csShooter 2007-01-16
  • 打赏
  • 举报
回复
up
viena 2007-01-16
  • 打赏
  • 举报
回复
fib[29]
glacier111 2007-01-16
  • 打赏
  • 举报
回复
private int add(int fn, int nn)
{
int sum = fn + nn;
index++;
if (index < 30)
{
add(nn, sum);
}
return sum;
}
viena 2007-01-16
  • 打赏
  • 举报
回复
以上是Unsafe代码,用指针的
viena 2007-01-16
  • 打赏
  • 举报
回复
using System; class Test
{
public static unsafe void Main()
{
int* fib = stackalloc int[100];
int* p = fib;
*p++ = *p++ = 1;
for (int i=2; i<100; ++i, ++p)
*p = p[-1] + p[-2];
Console.WriteLine (fib[30]);
}
}
Tenner 2007-01-16
  • 打赏
  • 举报
回复
public int Fibonacci(int n)
{
if (n <= 0) return 0;
if (n <= 2) return 1;
return Fibonacci(n - 2) + Fibonacci(n - 1);
}
xyq1986 2007-01-16
  • 打赏
  • 举报
回复
这题好像我笔试过哦,菲波那契数列
int f(int n)
{
if(n<=2)
return 1;
return f(n-1)+f(n-2);
}
lizhizhe2000 2007-01-16
  • 打赏
  • 举报
回复
public int recursive(int index)
{
if (index <= 2)
{
return 1;
}
else
{
return recursive(index - 1) + recursive(index - 2);
}
}

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧