java - 检查数组是否为回文
问题描述
我无法解决如何检查阵列是否已镜像
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]
我在控制台中得到了这个,但现在我不知道如何说它是否被镜像。
解决方案
您可以通过将其与原始数组的反向副本进行比较来检查该数组是否为回文。ArrayUtils.reverse
从 Apache commons使用:
int[] arrCopy = Arrays.copyOf(array, array.length);
ArrayUtils.reverse(arrCopy);
boolean isPalindrome = Arrays.equals(array, arrCopy);
推荐阅读
- ios - UIPickerView 不显示数组中的数据
- matlab - 在 matlab 中使用 perfcurve 和 SVM (fitcsvm) 的 ROC 和 AUC
- php - 无法使用 phpmailer 更新数据库中的密码
- sql-server - 创建函数 SQL-Server 语法不正确
- react-native - 如何在不使用 App.js 的情况下将像 Login.js 这样的单个页面加载为主页
- google-compute-engine - 如何使用 Terraform 脚本在 GCP 中的 LINUX(Ubuntu/Debian)GCE 实例中安装 stackdriver?
- javascript - 在将其作为数据发送到控制器之前从 ajax 中的 html 正文中删除 html 元素
- unity3d - 不同的场景集或动态变化的 UI?
- javascript - 在本机 JS 中使用 .map 保留对象键
- javascript - Firebase:查询未知名称键中的数据(另一个孩子中的孩子)