1.《相等》
输入10各整数,前5个数据赋值给数组1,后5个整数赋值给数组2,判断一个整数数组是否相等。(不准用Arrays.sort() )
0:长度和元素顺序完全一致
1:长度相等,但是元素顺序不一致
-1:其他
输入要求
多组数据,每一组一行数据10个整数,之间用空格隔开
前5个数据赋值给数组1,后5个整数赋值给数组2
输出要求
输出 -1,0 ,1 中的一个
输入
1 2 3 4 5 5 3 4 2 1
1 2 3 4 5 6 7 8 9 0
678 7 8 9 0 678 7 8 9 0
输出
1
-1
0
代码
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
while(input.hasNext()) {
int[] arr1=new int[5];
int[] arr2=new int[5];
for(int i=0;i<5;i++) {
arr1[i]=input.nextInt();
}
for(int i=0;i<5;i++) {
arr2[i]=input.nextInt();
}
equals(arr1,arr2);
}
}
public static void equals(int[] array1,int[] array2) {
boolean isequals = java.util.Arrays.equals(array1,array2);
if(isequals) {
System.out.println("0");
}else {
Arrays.sort(array1);
Arrays.sort(array2);
if(Arrays.equals(array1,array2)) {
System.out.println("1");
}else {
System.out.println("-1");
}
}
}
}
2.《减法》
编写下面方法,将连个数组相减。’
public static int[] sub(int[] list1,int[] list2)
也就是剔除list1且存在list2中的元素。编写程序验证。
输入要求
多组数据。每组数据10个整数,前六个整数为lis1元素,后4个数据为list2元素。以空格分隔
输出要求
按原来的顺序输出剔除list2后的元素。
每行输出3个数据,中间用空格分隔
输入
1 2 3 4 5 6 0 0 0 0
1 4 5 7 8 9 0 9 7 1
1 4 7 2 5 8 0 0 0 10
输出
1 2 3
4 5 6
4 5 8
1 4 7 2 5 8
代码
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
while (input.hasNext()) {
int[] arr1 = new int[6];
int[] arr2 = new int[4];
for (int i = 0; i < 6; i++) {
arr1[i] = input.nextInt();
}
for (int i = 0; i < 4; i++) {
arr2[i] = input.nextInt();
}
sub(arr1, arr2);
}
}
public static void sub(int[] array1, int[] array2) {
for (int i = 0; i < array1.length; i++) {
for (int j = 0; j < array2.length; j++) {
if (array1[i] == array2[j]) {
array1[i] = 0;
}
}
}
removeZero(array1);
}
public static void