Java 两种方法中的数组
正如您所看到的,它是Shell排序方法。Java 两种方法中的数组,java,methods,Java,Methods,正如您所看到的,它是Shell排序方法。 你能帮忙吗?第t=(int)(Math.log(A.length)/Math.log(2)-1行中的问题 如果数组的长度小于6,则t将为零。因此,您将创建长度为零的数组。这是一只虫子。可能你需要一些检查,可能需要另一个配方。无论如何,您必须检查代码。如前所述,您的问题是获取h数组长度的公式 一个简单的解决方法就是更改这一行: at ld11.sellaMethod(ld11.java:26) (h[0]=1; in this row)) at ld11
你能帮忙吗?第
t=(int)(Math.log(A.length)/Math.log(2)-1行中的问题代码>
如果数组的长度小于6
,则t
将为零。因此,您将创建长度为零的数组。这是一只虫子。可能你需要一些检查,可能需要另一个配方。无论如何,您必须检查代码。如前所述,您的问题是获取h
数组长度的公式
一个简单的解决方法就是更改这一行:
at ld11.sellaMethod(ld11.java:26) (h[0]=1; in this row))
at ld11.main(ld11.java:79) (else if(x==2){sellaMethod(A);} in this row
致:
因为您只希望新数组的长度与初始数组的长度相同。此代码非常不可读。例如。所有这些都集中在一行:for(i=0;i
at ld11.sellaMethod(ld11.java:26) (h[0]=1; in this row))
at ld11.main(ld11.java:79) (else if(x==2){sellaMethod(A);} in this row
t = (int) (Math.log(A.length) / Math.log(2) - 1);
t = A.length;