Go語言程式:獲取扁平化的1D陣列
在本教程中,我們將編寫一個Go語言程式,用於從多維二維陣列中獲取扁平化的1D陣列。多維陣列是由陣列組成的陣列,其中每個內部陣列表示一行元素。另一方面,一維陣列是一個包含多維陣列所有元素的連續陣列。
語法
func append(slice, element_1, element_2…, element_N) []T
append函式用於向陣列切片新增值。它接受多個引數。第一個引數是要向其中新增值的陣列,後面跟著要新增的值。然後,該函式返回包含所有值的最終陣列切片。
演算法
步驟1 − 首先,我們需要匯入fmt包。
步驟2 − 然後,我們需要啟動main()函式。在這個函式中,初始化一個整數陣列併為其賦值。然後使用fmt.Println()函式在螢幕上列印此陣列。
步驟3 − 建立一個名為flatArray()的函式,並在該函式中建立一個空陣列。使用for迴圈迭代陣列中的每個元素,並使用append()函式將值新增到其中。
步驟4 − 現在,返回由此形成的最終陣列。在main()函式中,透過將陣列作為引數傳遞給函式來呼叫flattenArray()函式。
步驟5 − 將函式返回的最終陣列儲存在一個變數中,並在螢幕上列印它。函式獲得的最終陣列是從二維多維陣列展平獲得的一維陣列。
示例
在下面的程式碼中,我們將執行Go語言程式,從二維陣列中獲取扁平化的1D陣列。
package main
import "fmt"
func main() {
// Initialize the multi-dimensional array
arr := [][]int{
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12},
}
fmt.Println("The 2-D array is:", arr)
// Flatten the array using the append function
flatArr := flattenArray(arr)
// Print the flattened array
fmt.Println("The flattened array obtained from above multidimensional array is:", flatArr)
}
func flattenArray(arr [][]int) []int {
// Initialize the flattened array
flatArr := []int{}
// Iterate through the rows of the array
for _, row := range arr {
// Append the current row to the flattened array
flatArr = append(flatArr, row...)
}
return flatArr
}
輸出
The 2-D array is: [[1 2 3 4] [5 6 7 8] [9 10 11 12]] The flattened array obtained from above multidimensional array is: [1 2 3 4 5 6 7 8 9 10 11 12]
結論
我們已經成功編譯並執行了一個Go語言程式,用於從多維二維陣列中獲取扁平化的1D陣列。上面的程式使用一個外部函式來實現結果。該函式接受一個二維陣列並返回最終的一維陣列。在這個函式中,我們使用Go的庫函式append()。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP