Conjunto (Set)
Definição
Um Conjunto (Set) é uma estrutura de dados que armazena elementos sem repetição, ou seja, cada valor aparece no máximo uma vez.
Diferentemente de listas ou arrays, os conjuntos não garantem ordem de inserção (exceto em versões específicas como LinkedHashSet
) e não permitem acesso por índice. O foco está em verificação de presença e operações de conjuntos como união, interseção e diferença.
Por que usar
Conjuntos são úteis quando:
- É necessário garantir ausência de duplicatas;
- Você precisa verificar rapidamente se um elemento está presente;
- Quer realizar operações matemáticas entre coleções (união, interseção);
- Trabalha com dados únicos, como IDs, categorias ou palavras-chave.
Exemplo prático (em Java)
Abaixo, um exemplo usando a implementação HashSet
:
import java.util.HashSet;
import java.util.Set;
public class ExemploSet {
public static void main(String[] args) {
// Criando um conjunto de linguagens
Set<String> linguagens = new HashSet<>();
// Adicionando elementos
linguagens.add("Java");
linguagens.add("Python");
linguagens.add("JavaScript");
linguagens.add("Python"); // duplicado, será ignorado
// Verificando existência
if (linguagens.contains("Java")) {
System.out.println("Java está no conjunto.");
}
// Iterando sobre o conjunto
for (String lang : linguagens) {
System.out.println(lang);
}
// Tamanho do conjunto
System.out.println("Total: " + linguagens.size()); // 3
}
}
Neste exemplo, "Python" é inserido duas vezes, mas só aparece uma vez no conjunto — característica típica de Set
. A ordem dos elementos exibidos pode variar, pois o HashSet
não mantém ordenação.