Go語言程式迴圈排列陣列元素
迴圈意味著在每個迴圈中,我們希望將陣列元素移動一個位置,直到我們再次獲得原始陣列。迴圈排列可用於各種矩陣操作和線性代數運算。在本文中,我們將瞭解使用 Go 程式語言迴圈排列陣列元素的不同示例。
語法
func append(slice, element_1, element_2…, element_N) []T
append 函式用於向陣列切片新增值。它接受多個引數。第一個引數是要新增值的陣列,後跟要新增的值。然後,該函式返回包含所有值的陣列的最終切片。
func make ([] type, size, capacity)
Go 語言中的 make 函式用於建立陣列/對映,它接受要建立的變數的型別、其大小和容量作為引數,並返回可以儲存在變數中的切片。
演算法
步驟 1 - 首先,我們需要匯入 fmt 包。
步驟 2 - 然後開始 main() 函式。在此函式中,使用 make() 函式初始化一個整數陣列,並使用 append() 函式向其中新增值。
步驟 3 - 宣告一個名為 n 的新變數,並將陣列的長度儲存到其中。此外,在螢幕上列印陣列。
步驟 4 - 使用 for 迴圈遍歷陣列,並將陣列元素向左移動一個位置,並列印由此形成的新陣列。
步驟 5 - 在每一步列印新陣列,直到整個陣列迴圈移動。
示例 1
在此示例中,我們將使用 for 迴圈以迴圈方式排列陣列的元素。我們將使用 for 迴圈遍歷陣列,並在每一步將陣列元素向左移動一個位置。
package main
import "fmt"
func main() {
// initializing an array
arr := make([]int, 0, 5)
arr = append(arr, 1, 2, 3, 4, 5)
n := len(arr)
fmt.Println("The given array is: ", arr)
for i := 0; i < n; i++ {
last := arr[n-1]
for j := n - 1; j > 0; j-- {
arr[j] = arr[j-1]
}
arr[0] = last
fmt.Println("Permuted Array: ", arr)
}
}
輸出
The given array is: [1 2 3 4 5] Permuted Array: [5 1 2 3 4] Permuted Array: [4 5 1 2 3] Permuted Array: [3 4 5 1 2] Permuted Array: [2 3 4 5 1] Permuted Array: [1 2 3 4 5]
示例 2
在此示例中,我們將使用 Go 程式語言的內部 append() 函式迴圈排列陣列的元素,直到我們再次獲得原始陣列。
package main
import "fmt"
func main() {
// initializing an array
arr := make([]int, 0, 5)
arr = append(arr, 1, 2, 3, 4, 5)
n := len(arr)
fmt.Println("Original Array: ", arr)
for i := 0; i < n; i++ {
arr = append(arr[1:], arr[0])
fmt.Println("Permuted Array: ", arr)
}
}
輸出
Original Array: [1 2 3 4 5] Permuted Array: [2 3 4 5 1] Permuted Array: [3 4 5 1 2] Permuted Array: [4 5 1 2 3] Permuted Array: [5 1 2 3 4] Permuted Array: [1 2 3 4 5]
結論
我們已成功編譯並執行了一個 Go 語言程式來迴圈排列陣列的元素。這裡我們使用了兩個程式。在第一個程式中,我們使用 for 迴圈將陣列元素移動一個位置,直到我們再次獲得原始陣列,而在第二個程式中,我們使用內部函式 append() 來執行邏輯並在每一步列印陣列。
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP