算法实现java(算法)

时间:2018-05-30 11:16:17

标签: java arrays algorithm

我试图编写一个java程序来测试以下代码

12,8,23,6,5,17,20,9

m=2;
n=0;
while m<array length
repeat
ar[m]=ar[n]+ar[n+1];
m++;
n++;
End while 

所以这是我的源代码

public class Main {

  public static void main(String [] args) {
    int []x= {12,8,23,6,5,17,0,9};
    int m=2;
    int n=0;


    while(m<x.length) {
        x[m]=x[n]+x[n+1];
        m++;
        n++;

        System.out.println(x);

     }

  }
}

它产生了类似的输出

[I@3d4eac69
[I@3d4eac69
[I@3d4eac69
[I@3d4eac69
[I@3d4eac69
[I@3d4eac69

这也是我老师的回答

public class Main {

public static void main(String [] args) {
    int []x= {12,8,23,6,5,17,0,9};
    int []y=algo(x); **//need an explanation**

    }
public static int[] algo(int[]ar) { **//need an explanation** 
    int m=2;
    int n=0;
    while(m<ar.length) {
        ar[m]=ar[n]+ar[n+1];
        m++;
        n++;
    }
    return ar;
   }
}

然而,教师代码没有生成输出。但是答案应该是这样的 12 8 20 28 48 76 124 200 请解释哪一个是最好的代码,以及它们是如何工作的。我还评论了我的老师代码的一些部分,我无法理解。请解释一下。

0 个答案:

没有答案