Programa para cambiar todo cero al final de la array en Golang

La tarea es desplazar todos los ceros que aparecen en la array hasta el final de la array. En Golang, esto se puede hacer de la siguiente manera:
Ejemplo: 

Input: 1 0 7 0 3

Output: 1 7 3 0 0

Go

// Golang program to shift all zero to the end of an array
package main
 
import (
    "fmt"
)
 
func main() {
 
    // Creating an array of tiny type
    // Using var keyword
    var ar [5]int
 
    // Elements are assigned using index
    ar[0] = 1
    ar[1] = 0
    ar[2] = 7
    ar[3] = 0
    ar[4] = 3
 
    // taking the length of array
    var arr_ele_number = len(ar)
    var last_non_zero_index = 0
 
    for i := 0; i < arr_ele_number; i++ {
 
        if ar[i] != 0 {
             
            ar[last_non_zero_index], ar[i] = ar[i], ar[last_non_zero_index]
            last_non_zero_index++
 
        }
    }
 
    fmt.Println("The array elements after shifting all zero to ends")
 
    for i := 0; i < arr_ele_number; i++ {
 
        fmt.Printf("%d ", ar[i])
 
    }
}

Producción:

The array elements after shifting all zero to ends:
1 7 3 0 0 

Explicación: La lógica detrás del ejemplo anterior es que el usuario ingresa la cantidad de elementos y los valores de esos elementos. Luego, la array se recorre mientras se buscan los ceros y los ceros se desplazan al final de la array.
 

Publicación traducida automáticamente

Artículo escrito por preetikagupta8171 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *