【发布时间】:2013-11-05 23:14:10
【问题描述】:
我应该编写一个程序来递归地反转数组中的数字。在这一点上,我真的不太了解代码。这是我目前所拥有的。
这是反向方法本身:
public static void reverse(int[] array, int i, int j)
{
if (i < j)
{
int temp = array[i];
array[i] = array[j];
array[j] = temp;
reverse(array, ++i, --j);
我不确定这是否正确。然后我有 main 方法。
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
System.out.println("Enter size of the array");
int n = input.nextInt();
int[] array = new int[n];
for (int i =0; i <array.length; i++)
{
System.out.println("Enter number to be inputed into array.");
array[i] = input.nextInt();
}
System.out.println(array);
}
它打印不正确,并在我认为应该是数组的文本中打印数字和字母。
【问题讨论】:
-
您的代码不完整,能否贴出整个反向方法?
-
我认为它只是缺少一对右括号。
-
是的,但最好确保。
-
注意:main方法实际上并没有调用
reverse。 -
这是我的代码。它只是缺少像ajb所说的大括号。它仍然无法正常工作。我无法正确调用我的方法。
标签: java arrays recursion reverse