Go 程序反转数组

使用 for 循环编写一个 Go 程序来反转数组。此示例使用 for 循环(for i = actsize – 1; i >= 0; i–)反转数组,该循环从最后一个数组项迭代到第一个元素。在 for 循环(revArr[j] = actArr[i])中,我们将每个项分配给 revArr 并递增 revArr 索引值。

package main

import "fmt"

func main() {
    var actsize, i, j int

    fmt.Print("Enter the Even Array Size = ")
    fmt.Scan(&actsize)

    actArr := make([]int, actsize)
    revArr := make([]int, actsize)

    fmt.Print("Enter the Even Array Items  = ")
    for i = 0; i < actsize; i++ {
        fmt.Scan(&actArr[i])
    }
    j = 0
    for i = actsize - 1; i >= 0; i-- {
        revArr[j] = actArr[i]
        j++
    }

    fmt.Println("\nThe Result of a Reverse Array = ", revArr)
}
Enter the Even Array Size = 3
Enter the Even Array Items  = 10 20 30

The Result of a Reverse Array =  [30 20 10]

Go 程序使用函数反转数组项

package main

import "fmt"

func reverseArray(actArr []int, actsize int) {
    revArr := make([]int, actsize)
    j := 0
    for i := actsize - 1; i >= 0; i-- {
        revArr[j] = actArr[i]
        j++
    }

    fmt.Println("\nThe Result of a Reverse Array = ", revArr)
}
func main() {
    var actsize, i int

    fmt.Print("Enter the Even Array Size = ")
    fmt.Scan(&actsize)

    actArr := make([]int, actsize)

    fmt.Print("Enter the Even Array Items  = ")
    for i = 0; i < actsize; i++ {
        fmt.Scan(&actArr[i])
    }

    reverseArray(actArr, actsize)
}
Enter the Even Array Size = 5
Enter the Even Array Items  = 25 55 75 95 125

The Result of a Reverse Array =  [125 95 75 55 25]

在此 程序 中,我们创建了一个递归函数(func reverseArray(actArr, start, end))来反转给定的数组。

package main

import "fmt"

func reverseArray(actArr []int, start int, end int) {
    var temp int
    if start < end {
        temp = actArr[start]
        actArr[start] = actArr[end]
        actArr[end] = temp
        reverseArray(actArr, start+1, end-1)
    }
}
func main() {
    var actsize, i int

    fmt.Print("Enter the Even Array Size = ")
    fmt.Scan(&actsize)

    actArr := make([]int, actsize)

    fmt.Print("Enter the Even Array Items  = ")
    for i = 0; i < actsize; i++ {
        fmt.Scan(&actArr[i])
    }

    reverseArray(actArr, 0, actsize-1)
    fmt.Println("\nThe Result of a Reverse Array = ", actArr)
}
Go Program to Reverse an Array