【发布时间】:2019-03-19 20:24:05
【问题描述】:
我无法解决如何检查阵列是否被镜像
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int a=0 ;
System.out.print("Array length:");
int b= sc.nextInt();
int [] array = new int [b];
for(int i=0;i<b;i++) {
System.out.print("Type the number "+i+" element: ");
a=sc.nextInt();
array[i]=a;
}
System.out.println(Arrays.toString(array));
sc.close();
}
当我输入例如 Array length: 3 并且我的数字是 1 2 1
数组长度:3
键入数字 0 元素:1
输入数字 1 元素:2
键入数字 2 元素:1
[1, 2, 1]
我在控制台中得到了这个,但现在我不知道它是否被镜像。
【问题讨论】:
-
作为人类,您将如何确定该阵列是否已镜像?
-
首先检查最后一个元素和第一个元素是否相等......然后是第二个和最后一个......直到你在中心相遇
-
如果我理解正确,您可以将第一个数组元素与最后一个元素进行比较,将第二个元素与倒数第二个元素进行比较,etc。直到找到不匹配或到达中间。由于元素的数量直到运行时才确定,因此您需要为此使用循环。
标签: java arrays palindrome