Golang 获取扁平化的一维数组

Golang 获取扁平化的一维数组

在本教程中,我们将编写一个Go语言程序,从多维二维数组中获取扁平化的一维数组。多维数组是由数组组成的数组,其中每个内部数组代表一行元素。另一方面,一维数组是一个单独的数组,它以连续的方式包含多维数组的所有元素。

语法

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 - 将函数返回的最终数组存储在一个变量中,并将其打印在屏幕上。函数得到的最终数组是通过展平2D多维数组而得到的一维数组。

示例

在以下代码中,我们将执行Golang程序以从2D数组中获得一个展平的一维数组。

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语言程序,从多维2D数组中获取扁平化的1D数组。上述程序使用一个外部函数来实现结果。该函数接受一个2D数组并返回最终的1D数组。在该函数内部,我们使用了go语言的库函数append()。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程