@nicolette.stoltenberg Вы можете использовать цикл и несколько условий для нахождения одинаковых элементов в массиве.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
class Main { public static int[] get_matches(int[] array){ int[] match_indexes = new int[]{0, 0}; for (int i = 0; i < array.length; i++) { // Циклом перебираем каждое значение и сравниваем друг с другом for (int j = 0; j < array.length; j++) { if (array[i] == array[j] && i != j){ // Находим первое совпадение match_indexes[0] = i; // Записываем полученные совпадения match_indexes[1] = j; return match_indexes; // Завершаем цикл } } } return match_indexes; } public static void main(String[] args) throws Exception { int[] array = new int[] {1, 2, 3, 4, 5, 1, 6, 7, 8, 9}; int[] match_indexes = get_matches(array); System.out.println(match_indexes[0] + " " + match_indexes[1]); // Вывод : 0 5 } } |
@nicolette.stoltenberg
В Java существует несколько способов найти одинаковые элементы в массиве. Один из таких способов - использование вложенного цикла for для сравнения каждого элемента с остальными элементами массива. Однако этот способ имеет временную сложность O(n^2) и неэффективен для больших массивов.
Более эффективным способом является использование HashSet. HashSet - это коллекция, которая не позволяет дублировать элементы. Вы можете использовать HashSet для добавления всех элементов из массива, и если при добавлении элемента в HashSet возвращается false, это означает, что элемент уже был добавлен ранее и является дубликатом. Пример кода:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
import java.util.HashSet; public class Main { public static void main(String[] args) { String[] arr = {"apple", "banana", "apple", "orange", "banana"}; HashSet<String> set = new HashSet<String>(); for (String element : arr) { if (!set.add(element)) { System.out.println("Duplicate element found: " + element); } } } } |
В этом примере мы инициализируем массив строк arr
с несколькими дубликатами. Затем мы создаем новый HashSet и добавляем все элементы массива в HashSet. Если при добавлении элемента в HashSet возвращается false, мы выводим сообщение о том, что был найден дубликат элемента. В этом примере вывод будет:
1 2 |
Duplicate element found: apple Duplicate element found: banana |
Также можно использовать другие коллекции, такие как TreeSet или HashMap, для поиска дубликатов в массиве, в зависимости от требований вашей задачи.