在 Go 中反轉陣列

Jay Singh 2022年4月22日
在 Go 中反轉陣列

本教程將演示如何在 Go 中反轉陣列。

在 Go 中使用 for 迴圈反轉陣列

由於 Go 中有許多返回值,因此反轉陣列非常簡單。我們可以迴圈遍歷陣列的前半部分,一次將每個元素與其映象對應的元素進行切換。

在此示例中,我們將建立一個將陣列作為輸入的函式。我們將遍歷輸入陣列,交換所提供陣列的開始和最後一個元素,然後返回該陣列。

示例 1:

package main

import "fmt"

func reverseArray(arr []int) []int {
    for i, j := 0, len(arr)-1; i < j; i, j = i+1, j-1 {
        arr[i], arr[j] = arr[j], arr[i]
    }
    return arr
}

func main() {
    fmt.Println(reverseArray([]int{100, 200, 300, 400, 500}))
}

輸出:

[500 400 300 200 100]

示例 2:

package main

import "fmt"

func reverse(numbers []int) []int {
    for i := 0; i < len(numbers)/2; i++ {
        j := len(numbers) - i - 1
        numbers[i], numbers[j] = numbers[j], numbers[i]
    }
    return numbers
}

func main() {
    fmt.Printf("%v\n", reverse([]int{100, 200, 300, 400, 500}))
}

輸出:

[500 400 300 200 100]