具体的问题是这样的:
一个斐契那数列是由数字1,1,2,3,5,8,13,21,34等等组成的,其中每一个数字(从第三个数字开始起)都是前两个数字的和,创建一个方法,接受一个整数参数,并显示从第一个元素开始总共由该参数指定的个数所构成的所有斐波那契数字。例如,如果运行时所给的参数是5,那么输出的就是1,1,2,3,5
本人刚学JAVA以语言也没学好,一些算法还不是很熟悉,希望高手多多帮助,谢谢!

解决方案 »

  1.   

    java?怎么发到这儿了?
    我这儿有C#的 VB的//递归裴波那契数列
    public int fib(int i)
    {
        if (i==1 || i==2)
        {
            return 1;
        }
        else
        {
            return fib(i-1) + fib(i-2);
        }
    }'VB的
    public Function fib(i as integer) as integer
        if i=1 or i=2 then
            return 1
        else
            return fib(i-1) + fib(i-2)
        end if
    end Function
    //C#非递归裴波那契数列,数组
    public int fib(int no) 
    {
        int[] arr = new int[no];
        arr[0] = 1;
        arr[1] = 1;
        for (int i=2; i<no; i++) arr[i] = arr[i-1] + arr[i-2];
        return arr[no-1];
    }
    //C#非递归裴波那契数列,数组,unsafe代码(用指针)
    public unsafe int fib(int no) 
    {
        int* fib = stackalloc int[no];
        int* p = fib;
        *p++ = *p++ = 1;
        for (int i=2; i<no; ++i, ++p) *p = p[-1] + p[-2];
        return fib[no];
    }