对数组进行排序的Golang程序
在本教程中,我们将看到用三种不同的方法编写一个Go语言程序来对一个数组进行排序。
下面的代码说明了我们如何使用用户定义的函数对golang中的元素数组进行排序。
第1步 – 导入fmt包。
第2步 – 定义一个名为sortArray()的函数,将对给定的数组进行排序。
第3步 – 将需要排序的数组作为参数传给该函数。这个函数使用两个for循环来遍历数组。
第4步 – 如果数组的当前元素大于前一个元素,那么我们需要切换它们的位置。
第5步 – 重复这个过程,直到for循环迭代到所有的数组元素。返回这样形成的新数组。
第6步 – 启动主功能。
第7步 – 初始化一个整数数组,并将其打印在屏幕上。
第8步 – 调用sortArray()函数。
第9步 – 将函数返回的数组存储在一个名为result的变量中,并使用fmt.Println()函数将其打印在屏幕上。
package main
import "fmt"
// defining a sortArray function to sort the given array
func sortArray(arr [5]int) [5]int {
for i := 0; i <= len(arr)-1; i++ {
for j := 0; j < len(arr)-1-i; j++ {
if arr[j] > arr[j+1] {
arr[j], arr[j+1] = arr[j+1], arr[j]
}
}
}
return arr
}
func main() {
arr := [5]int{50, 30, 20, 10, 40}
fmt.Println("The unsorted array entered is:", arr)
result := sortArray(arr)
fmt.Println("The sorted array is:", result)
fmt.Println()
arr = [5]int{2, 8, 6, 3, 1}
fmt.Println("The unsorted array entered is:", arr)
result = sortArray(arr)
fmt.Println("The sorted array is:", result)
}
The unsorted array entered is: [50 30 20 10 40]
The sorted array is: [10 20 30 40 50]
The unsorted array entered is: [2 8 6 3 1]
The sorted array is: [1 2 3 6 8]
下面的代码说明了在Go编程语言中对一个字符串数组进行排序的方法
Sort.Strings(strs)
Strings()函数存在于sort包中,它接收要排序的字符串数组作为参数,并返回排序后的字符串。
第1步 – 导入fmt和sort包。
第2步 – 启动main()函数。
第3步 – 初始化一个字符串数组,并向其存储数值。在屏幕上打印未排序的数组。
第4步 – 现在我们需要调用sort包中的函数字符串,将需要排序的数组作为参数传给该函数。
第5步 – strs数组现在已经排序了。我们可以用fmt.Println()函数将其打印在屏幕上。
package main
import (
"fmt"
"sort"
)
func main() {
var strs = []string{"c", "a", "b"}
fmt.Println("Unsorted array of strings is", strs)
sort.Strings(strs)
fmt.Println("The above array is sorted and the result is:", strs)
}
Unsorted array of strings is [c a b]
The above array is sorted and the result is: [a b c]
我们已经成功地编译并执行了一个Go语言程序来对一个数组进行排序,同时还有一些例子。