//Дан массив чисел, в котором все числа кроме одного имеют пару,

Чтобы определить первый уникальный элемент в последовательности чисел, можно пройтись по элементам, подсчитывая количество каждого, а затем найти первый элемент с количеством 1.

Короткий ответ

Что ответить на собеседовании

Чтобы определить первый уникальный элемент в последовательности чисел, можно пройтись по элементам, подсчитывая количество каждого, а затем найти первый элемент с количеством 1.

Подробный разбор

Ответ с пояснениями

Условие

//Дан массив чисел, в котором все числа кроме одного имеют пару, //найти число, которое встречается только один раз

// <= [1, 0, 3, -2, 9, 9, 1, -2, 0] // => 3

int find(int[] arr){ //TODO }

Ответ

Чтобы определить первый уникальный элемент в последовательности чисел, можно пройтись по элементам, подсчитывая количество каждого, а затем найти первый элемент с количеством 1.

Пример на Java:

import java.util.*;

public class FirstUnique {
    public static Integer firstUnique(int[] nums) {
        Map<Integer, Integer> countMap = new LinkedHashMap<>();
        for (int num : nums) {
            countMap.put(num, countMap.getOrDefault(num, 0) + 1);
        }
        for (Map.Entry<Integer, Integer> entry : countMap.entrySet()) {
            if (entry.getValue() == 1) {
                return entry.getKey();
            }
        }
        return null; // если уникальных элементов нет
    }

    public static void main(String[] args) {
        int[] nums = {2, 3, 4, 2, 3, 5};
        System.out.println(firstUnique(nums)); // Выведет 4
    }
}

Здесь LinkedHashMap сохраняет порядок вставки, что позволяет найти именно первый уникальный элемент.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее