Sobes.tech
Back to questions
Junior — Middle
84

Планируешь ли ты применить структуру данных HashSet для оптимизации процесса устранения повторяющихся элементов в неупорядоченном списке?

Answer from AI

sobes.tech AI

Да, использование HashSet — это эффективный способ устранения дубликатов в неупорядоченном списке. HashSet хранит только уникальные элементы, и при добавлении проверяет наличие элемента за константное время в среднем.

Пример на Java:

import java.util.*;

public class RemoveDuplicates {
    public static List<Integer> removeDuplicates(List<Integer> list) {
        return new ArrayList<>(new HashSet<>(list));
    }

    public static void main(String[] args) {
        List<Integer> numbers = Arrays.asList(1, 2, 2, 3, 4, 4, 5);
        List<Integer> unique = removeDuplicates(numbers);
        System.out.println(unique); // Выведет уникальные элементы, порядок может быть не сохранён
    }
}

Если важен порядок, можно использовать LinkedHashSet, который сохраняет порядок вставки.