그래서, 내 작업은 두 개의 배열을 교차시키는 것이지만 최종 결과에는 2 개의 반복되는 요소가 허용되지 않습니다. 나는이 코드를 얻었지만, 각 배열에 2 개의 동일한 숫자가 있으면 최종 결과에서 둘 다 나타나기 때문에 작업을 만족시키지 못한다. 어떤 제안?2 개의 배열의 교차 결과의 두 개의 반복 숫자
static void printIntersection(int[] arr1, int[] arr2) {
int m = arr1.length;
int n = arr2.length;
int i = 0, j = 0;
while ((i < m) && (j < n)) {
if (arr1[i] == arr2[j]) {
System.out.print(arr1[i] + " ");
i++;
j++;
} else if (arr1[i] < arr2[j])
i++;
else
j++;
}
}
static void printArray(int[] arr) {
for (int i = 0; i < arr.length; i++)
System.out.print(arr[i] + " ");
System.out.println();
}
public static void main(String[] args) {
int[] arr1 = {1, 2, 2, 4, 5, 6};
int[] arr2 = {2, 2, 3, 5, 7};
System.out.println("Array1:");
printArray(arr1);
System.out.println("Array2:");
printArray(arr2);
System.out.println("Union:");
System.out.println();
System.out.println("Intersection:");
printIntersection(arr1, arr2);
System.out.println();
}
감사합니다! 그것은 작동합니다. –
@VIKOManafov 네. 그렇다면 아마 그것을 받아 들일 수 있습니다. – janos