Dada una array de tamaño n. Su tarea es eliminar los duplicados de la array.
Ejemplos:
Input : array: 1 2 1 2 1 3 2 Output :1 2 3 Input :array: 10 24 5 10 24 Output :10 24 5
Usaremos dos bucles para resolver este problema. El primer bucle lo atravesaré desde 0 hasta la longitud de la array. El segundo bucle atravesará de 0 a i-1 . Este ciclo se usa para asegurarse de que el elemento en el índice i no haya venido antes de i . Si ese elemento ha venido antes, entonces salimos del segundo ciclo. justo después del segundo bucle, escribimos una condición if que verifica si j = = i . Si son iguales, significa que el elemento en el índice i no ha ocurrido antes. Entonces debemos agregar el elemento a la array de resultados.
// Golang Program that Removes // Duplicates Using Nested Loops package main import "fmt" func removeDup(a []int, n int) []int { // declaring an empty array result := []int{} // traversing the array // from 0 to length of array for i := 0; i < n; i++ { j := 0 // variable for next loop // loop to check if the current // element has come before or not for ; j < i; j++ { if a[j] == a[i] { // it means the element // has come before, so break break } } // it means that the element has not // come anytime, so append it in // the resultant array if j == i { result = append(result, a[i]) } } return result } func main() { // declaring the array a := []int{1, 2, 1, 2, 1, 3, 2} // size of the array n := 7 // calling the remove duplicates // function to get the answer result := removeDup(a, n) // printing the answer fmt.Println(result) }
Producción:
[1 2 3]
Publicación traducida automáticamente
Artículo escrito por ManishKhetan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA