Golang程序 对2D数组进行跨列排序
什么是Golang中的二维数组?
在Go编程语言中,2D数组是一个数组的数组,其中外层数组的每个元素本身就是一个简单的数组。声明一个大小为2 X 3的二维数组的代码可以通过写var array [2
][3]来完成。需要注意的是,2D数组有一个固定的大小,一旦创建,其大小就不能改变。如果你需要一个动态的二维数组,你可以使用分片的方式。
下面是一个对二维数组进行跨列排序的例子 –
输入
输出
方法1:使用For循环
在这个方法中,我们将在golang程序中使用 “for “循环,这将有助于我们对二维数组进行跨列排序。
算法
- 第1步 – 首先,我们需要导入fmt包。
-
第2步 – 然后,启动main()函数。在main()函数中,初始化一个具有待排序元素的二维整数阵列。使用for循环和fmt.Println()函数在屏幕上打印该数组。
-
第3步– 为了对元素进行排序,在彼此之间使用三个for循环。前两个for循环用于遍历二维数组,而第三个for循环用于选择循环中的特定元素,并将其置于相应的位置。
-
第4步 – 如果数组中的当前元素大于下一个元素,那么我们需要切换元素的位置,否则我们必须继续进行循环。
-
第5步 – 一旦循环中的每个元素被迭代,我们收到的结果数组将按升序排序。我们可以使用fmt.Println()函数在屏幕上打印这些数组的元素。
例子
下面是一个Golang程序,使用 “for “循环对一个2D数组进行跨列排序
输出
方法2:使用内部函数
在这个方法中,我们将使用一个内部函数来对二维数组的元素进行排序。
语法
len()函数是用来获取任何参数的长度的。它需要一个参数作为数据类型的变量,我们希望找到其长度,并返回整数值,即该变量的长度。
Ints()函数存在于sorts包中,用于对一个特定的整数阵列进行排序。该函数接受要排序的片断作为参数,并在对片断的元素进行排序后返回最终片断。
Slice()函数存在于sort包中。该函数用于将接口方法附加到int数组上,这样就可以按照递增的顺序进行排序。
算法
- 第1步 – 首先,我们需要导入fmt包。
-
第2步 – 然后,启动main()函数。在main()函数中,初始化一个2D的整数数组,其中有要排序的元素。使用for循环和fmt.Println()函数在屏幕上打印该数组。
-
第3步 – 使用for循环对元素进行排序。for循环用于在二维数组上进行迭代,并在每次迭代时将元素传递给排序包中的Ints()函数。
-
第4步– 一旦循环中的每个元素都被迭代,我们收到的结果数组就会按升序进行跨列排序。我们现在可以使用fmt.Println()函数在屏幕上打印这些数组的元素。
例子1
在下面的例子中,我们使用sort.Ints()在go编程中对二维数组进行跨列排序
输出
例2
在这个方法中,我们使用slice库中的sort.Slice()函数对二维数组进行跨列元素排序
输出
结论
我们已经成功编译并执行了一个go语言程序,使用main()和内部库函数对二维数组进行跨列排序。