Removedor de duplicatas de array Python
Filtre itens duplicados de uma lista Python enquanto mantém seu pedido de inserção original.
Visão geral
A remoção de duplicatas é uma das operações de limpeza de dados mais comuns em software.
Converter uma lista em um conjunto (`set(arr)`) remove duplicatas, mas destrói a ordem dos elementos porque os conjuntos não são ordenados.
Para remover duplicatas e ao mesmo tempo preservar a ordem, iteramos pela lista e rastreamos os elementos vistos em um conjunto, anexando novos a uma lista de resultados.
Saída de código e execução
Acumulador eficiente de elementos únicos com preservação de ordem O(n).
def remove_duplicates(arr):
seen = set()
result = []
for item in arr:
if item not in seen:
seen.add(item)
result.append(item)
return result
sample_list = [1, 2, 2, 3, 4, 4, 1, 5]
print("Original:", sample_list)
print("Unique: ", remove_duplicates(sample_list))Original: [1, 2, 2, 3, 4, 4, 1, 5]
Unique: [1, 2, 3, 4, 5]Implementação passo a passo
- Limpeza do histórico de pesquisa e registros de transações
- Preparando lista de chaves de dados exclusivas para consultas SQL
- Limpeza de matrizes para mapeamento de visualização
Perguntas frequentes
Qual é a maneira mais rápida de fazer isso emPython 3.7+?
ComoPython 3.7+ preserva a ordem de inserção do dicionário, você pode executar `list(dict.fromkeys(arr))` para remover duplicatas enquanto mantém a ordem em uma única etapa otimizada.
Tópicos Relacionados
Explore algoritmos de classificação python. Visualize a classificação por bolha e a classificação por mesclagem nativamente em um contexto IDE do navegador.
Algoritmo de pesquisa binária PythonPesquise listas classificadas em tempo logarítmico O (log n). Execute e entenda a pesquisa binária em Python, incluindo lógica passo a passo, casos extremos e otimizações.