Мне нужно создать функцию, которая будет принимать два массива целых чисел. Отображение комбинаций и количества комбинаций без одинакового значения.
Пример:
Array 1 = { 1, 2, 3 };
Array 2 = { 2, 3, 4 };
Выход :
1,2
1,3
1,4
2,3
2,4
3,2
3,4
Количество комбинаций: 7
Я видел здесь много сложных кодов и не могу найти точную цель, которую я ищу до сих пор. Ожидая, пока кто-нибудь поможет, я просто буду просматривать и искать. Также я использую Java 7.
for (int a : arr1) for (int b : arr2) if (a != b) System.out.println(a + "," + b);
Подобрать правильное название для математической операции может быть очень сложно. То, что вы описываете, называется «декартовым произведением» ваших двух массивов, при этом некоторые результаты отфильтровываются. Термин «комбинации» имеет очень специфическое значение в математике: он относится к неупорядоченному выбору элементов из одного набора, состоящего из отдельных элементов.
Попробуй это.
Примечание. Этот код рассматривает данный пример. Проверка не проводится. Вы можете добавить его, если это необходимо.
int count = 0;
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array2.length; j++) {
if (array[i] != array2[j]){
System.out.println("Combination "+array[i]+" "+array2[j]);
count = count +1;
}
}
}
System.out.println("Combination "+count);
Пожалуйста, добавьте свой код.