Сложность: easy
Дан непустой массив целых чисел nums, в котором каждый элемент встречается дважды, кроме одного. Найдите этот единственный элемент.
Вы должны реализовать решение с линейной сложностью выполнения и использовать только постоянное дополнительное пространство.
Пример:
Input: nums = [2,2,1]
Output: 1
👨💻 Алгоритм:
1⃣Переберите все элементы в массиве nums.
2⃣Если какое-то число в nums новое для массива, добавьте его.
3⃣Если какое-то число уже есть в массиве, удалите его.
😎 Решение:
class Solution {
public int singleNumber(int[] nums) {
List<Integer> no_duplicate_list = new ArrayList<>();
for (int i : nums) {
if (!no_duplicate_list.contains(i)) {
no_duplicate_list.add(i);
} else {
no_duplicate_list.remove(new Integer(i));
}
}
return no_duplicate_list.get(0);
}
}Ставь 👍 и забирай 📚 Базу знаний