Golang 以升序排列数组的元素

Golang 以升序排列数组的元素

在本教程中,我们将学习如何编写一个Go语言程序来对数组进行升序排序。

使用用户定义函数以升序排序数组

下面的代码说明了如何在Golang中对元素数组进行升序排序。

步骤

第1步 - 导入fmt包。

第2步 - 定义一个函数sortArray()来对给定的数组进行排序。

第3步 - 使用sortArray()函数的参数,一个是我们希望排序的整数数组,另外两个变量用于存储临时值。

第4步 - 使用for循环和if条件对数组进行排序。第一个for循环用于遍历未排序的数组。

第5步 - 第二个for循环用于获取数组中的最小值。然后通过使用临时变量,将较小的值放在较大的值后面。

第6步 - 开始main()函数。

第7步 - 初始化一个整数数组并将值存储在其中。在屏幕上打印未排序的数组。

第8步 - 然后,我们需要调用sortArray()函数,通过传递要排序的数组以及temp和min整数类型变量。

第9步 - 存储由函数返回的数组,并使用fmt.Println()函数在屏幕上打印它。

示例

package main
import "fmt"
func sortArray(arr [5]int, min int, temp int) [5]int {
   for i := 0; i <= 4; i++ {
      min = i
      for j := i + 1; j <= 4; j++ {
         if arr[j] < arr[min] {

            // changing the index to show the min value
            min = j
         }
      }
      temp = arr[i]
      arr[i] = arr[min]
      arr[min] = temp
   }
   return arr
}
func main() {
   arr := [5]int{50, 30, 20, 10, 40}
   fmt.Println("The unsorted array entered is:", arr)
   var min int = 0
   var temp int = 0
   array := sortArray(arr, min, temp)
   fmt.Println()
   fmt.Println("The final array obtained after sorting is:", array)
}

输出

The unsorted array entered is: [50 30 20 10 40]

The final array obtained after sorting is: [10 20 30 40 50]

使用排序函数对整数数组进行排序

以下代码示例了使用预定义函数在Go编程语言中对字符串数组进行排序。

语法

sort.Ints(arr)

Ints函数位于sort包中,它以待排序的整数数组作为参数,并通过将其按升序排序来返回数组。

步骤

步骤1 - 导入fmt和sort包。

步骤2 - 启动main()函数。

步骤3 - 初始化一个整数数组并将值存储其中。在屏幕上打印未排序的数组。

步骤4 - 现在我们需要通过将待排序的数组作为函数的参数来调用sort包中的Ints()函数。

步骤5 - 数组arr已经排序。使用fmt.Println()函数将其打印到屏幕上。

示例

package main
import (
   "fmt"
   "sort"
)
func main() {
   var arr = []int{9, 8, 7, 4, 5, 3}
   fmt.Println("Unsorted array of strings is", arr)
   sort.Ints(arr)
   fmt.Println("The above array is sorted and the result is:", arr)
}

输出

Unsorted array of strings is [9 8 7 4 5 3]
The above array is sorted and the result is: [3 4 5 7 8 9]

使用切片方法按升序对字符串数组进行排序

现在让我们编写一个程序,使用Go编程语言中的预定义函数按升序对字符串数组进行排序。

语法

sort.Sort(sort.StringSlice(arr))

StringSlice()函数在sort包中,它以要排序的字符串数组作为参数,并返回排序后的字符串。

步骤

第一步 –导入fmt和sort包。

第二步 –启动main()函数。

第三步 –初始化一个字符串数组并将值存储在其中。在屏幕上打印未排序的数组。

第四步 –现在我们需要通过将要排序的数组作为参数传递给sort包中的StringSlice()函数来调用该函数。

第五步 –arr数组现在已经排序。我们可以使用fmt.Println()函数在屏幕上打印它。

示例

package main
import (
   "fmt"
   "sort"
)
func main() {
   var arr = []string{"s", "d", "c", "b", "a"}
   fmt.Println("Unsorted array of strings is", arr)
   sort.Sort(sort.StringSlice(arr))
   fmt.Println("The above array is sorted and the result is:", arr)
}

输出

Unsorted array of strings is [s d c b a]
The above array is sorted and the result is: [a b c d s]

结论

我们成功地编译并执行了一个Go语言程序,用于对数组进行升序排序,并提供了示例。在第一个示例中,我们使用了一个用户定义的函数,在第二个示例中,我们使用了一个内置函数Sort(),在第三个示例中,我们使用了另一种切片方法。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程