DEV Community

Cover image for Como remover dados duplicados em go
William Koller
William Koller

Posted on

2 1

Como remover dados duplicados em go

Ola devs e devas

Iremos usar de exemplo um slice de int para passarmos dados duplicados nele.

Criaremos um arquivo main.go de exemplo

Image description

Esse é o retorno:

intSliceValues [1 2 3 3 4 4 5 6 7 8 9 9 9]

Agora iremos criar uma function para remover os dados duplicados

Image description

E agora no main, ficaria assim:

Image description

O retorno:

intSliceValues [1 2 3 3 4 4 5 6 7 8 9 9 9]
uniqueSlice [1 2 3 4 5 6 7 8 9]

Conclusão:

  • A partir da função main, declaramos um slice. Também imprimimos o valor original da slice.

  • Definimos uma função onde estamos passando os valores originais do slice e verificando as duplicatas.

  • Lógica para verificação de duplicatas: Para isso definimos outra slice e atribuindo os primeiros valores verificando se o valor já existe na novo slice ou não. Ele retorna o slice sem duplicatas.

  • Estamos chamando a função removeDuplicate da função principal onde o slice de retorno da função é impressa.

Espeor ter ajudado.

Sentry image

See why 4M developers consider Sentry, “not bad.”

Fixing code doesn’t have to be the worst part of your day. Learn how Sentry can help.

Learn more

Top comments (2)

Collapse
 
cehasli profile image
Cehasli de Castro

Excelente artigo.

Na linha main.go:10, pelo valor ser um bool, poderia ser !keys[entry] também.

Uma coisa que alguns devs usam é um map[chave]struct{} já que o valor não é usado e dependendo da quantidade de chaves, usa menos memória.

Collapse
 
williamkoller profile image
William Koller

Muito obrigado, utilizar menos memória já é sensacional. Obrigado pela dica

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay