Sobes.tech
Junior — Middle

Qual é a singularidade da estrutura de dados LinkedHashSet e como ela funciona?

sobes.tech IA

Resposta da IA

LinkedHashSet é uma estrutura de dados em Java que combina as propriedades de HashSet e LinkedHashMap.

Unicidade e características:

  • Armazena elementos únicos (como HashSet).
  • Mantém a ordem de inserção dos elementos, graças a uma lista ligada interna (Linked).

Como funciona:

  • Baseia-se em LinkedHashMap, onde os elementos do conjunto atuam como chaves.
  • Ao adicionar um elemento, ele é colocado na tabela de hash para uma busca rápida e, ao mesmo tempo, adicionado à lista ligada que mantém a ordem de inserção.
  • Ao percorrer o conjunto, os elementos são retornados na ordem em que foram adicionados.

Dessa forma, o LinkedHashSet fornece:

  • Acesso rápido e verificação da existência de um elemento (em média O(1)).
  • Iteração sobre os elementos na ordem de inserção.

Exemplo de uso:

import java.util.LinkedHashSet;

public class Example {
    public static void main(String[] args) {
        LinkedHashSet<String> set = new LinkedHashSet<>();
        set.add("apple");
        set.add("banana");
        set.add("cherry");

        for (String fruit : set) {
            System.out.println(fruit);
        }
    }
}

A saída será:

apple
banana
cherry

Isto distingue o LinkedHashSet do HashSet comum, que não garante a ordem dos elementos.