1
在这里,我得到一个错误左旋转使用Java
不能使从类型LeftRotation的静态引用非静态方法leftRotatebyOne(INT [],INT)
这里是我的代码..
public static int[] arrayLeftRotation(int[] arr, int n, int k)
{
int i;
for (i = 0; i < k; i++)
leftRotatebyOne(arr, n);
}
void leftRotatebyOne(int arr[], int n)
{
int i, temp;
temp = arr[0];
for (i = 0; i < n - 1; i++)
arr[i] = arr[i + 1];
arr[i] = temp;
}
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int k = in.nextInt();
int a[] = new int[n];
for(int a_i=0; a_i < n; a_i++)
{
a[a_i] = in.nextInt();
}
int[] output = new int[n];
output = arrayLeftRotation(a, n, k);
for(int i = 0; i < n; i++)
System.out.print(output[i] + " ");
}
谁能告诉进一步进行我。
变化'空隙leftRotatebyOne(INT ARR [],INT N)'到'静态无效leftRotatebyOne(INT ARR [],整数Ñ )' –
下次请包括堆栈跟踪或至少其中的一部分。在这里很容易推断出问题所在,但通常情况并非如此,因此无论如何人们会问你一个完整的错误。 :) –
我试过了,它会影响arrayLeftRotation(int [] arr,int n,int k)方法使返回结果为int [] –