Go+ 排序教程(4.1)
【摘要】
目录
Go+ 概述
排序
整型排序
浮点型排序
字符串类型排序
Go+ 概述
Go+ 是一门融合工程开发的 Go、数据科学领域的 Python、编程教学领域的 Scratch,以 Python 之形结合 Go 之心,让工程师处理数据不需要学习新的开发语言,让初学者学习编程、开发作品的门槛更低的编程语言。
排序 ...
目录
Go+ 概述
Go+ 是一门融合工程开发的 Go、数据科学领域的 Python、编程教学领域的 Scratch,以 Python 之形结合 Go 之心,让工程师处理数据不需要学习新的开发语言,让初学者学习编程、开发作品的门槛更低的编程语言。
排序
Go+ 支持对数据切片或者数组进行排序,使用的工具库是 sort 包,导入方式如下:
import (
"sort"
)
接下来,我们进行详细介绍。
整型排序
Go+ 利用 sort 包可以对整型数据进行排序,下面是示例代码:
import (
"sort"
)
arr := [101, 32, 25, 7, 1, 213, 66, 19]
println("排序前:", arr)
sort.Ints(arr)
println("排序前:", arr)
上述代码输出结果:
排序前: [101 32 25 7 1 213 66 19] 排序前: [1 7 19 25 32 66 101 213]
运行结果截图:
也可以自己尝试:请点我
对切片和数组进行排序后,我们还可以使用 IntsAreSorted() 方法对切片和数组进行判断,是否已经进行过排序,IntsAreSorted() 方法原型如下:
func IntsAreSorted(a []int) bool
下面是示例代码:
import (
"sort"
)
arr := [101, 32, 25, 7, 1, 213, 66, 19]
println("排序前:", arr)
sort.Ints(arr)
println("排序前:", arr)
res := sort.IntsAreSorted(arr)
println("已经排序:", res)
上述代码输出结果:
排序前: [101 32 25 7 1 213 66 19] 排序前: [1 7 19 25 32 66 101 213] 已经排序: true
运行结果截图:
也可以自己尝试:请点我
浮点型排序
Go+ 利用 sort 包可以对浮点型数据进行排序,下面是示例代码:
import (
"sort"
)
arr := [10.1, 3.2, 2.5, 0.7, 1.0, 2.13, 6.6, 1.9]
println("排序前:", arr)
sort.Float64s(arr)
println("排序前:", arr)
上述代码输出结果:
排序前: [10.1 3.2 2.5 0.7 1 2.13 6.6 1.9] 排序前: [0.7 1 1.9 2.13 2.5 3.2 6.6 10.1]
运行结果截图:
也可以自己尝试:请点我
同样,浮点型数据也有对应的方法检测切片是否已经递增排序,方法原型如下:
func Float64sAreSorted(a []float64) bool
下面是示例代码:
import (
"sort"
)
arr := [10.1, 3.2, 2.5, 0.7, 1.0, 2.13, 6.6, 1.9]
println("排序前:", arr)
sort.Float64s(arr)
println("排序前:", arr)
res := sort.Float64sAreSorted(arr)
println("已经排序:", res)
上述代码输出结果:
排序前: [10.1 3.2 2.5 0.7 1 2.13 6.6 1.9] 排序前: [0.7 1 1.9 2.13 2.5 3.2 6.6 10.1] 已经排序: true
运行结果截图:
字符串类型排序
Go+ 利用 sort 包可以对字符串类型的数据进行排序,下面是示例代码:
import (
"sort"
)
arr := ["a", "hello", "world", "b", "good", "x", "zZ", "A"]
println("排序前:", arr)
sort.Strings(arr)
println("排序前:", arr)
上述代码输出结果:
排序前: [a hello world b good x zZ A] 排序前: [A a b good hello world x zZ]
运行结果截图:
也可以自己尝试:请点我
同样,字符串类型数据也有对应的方法检测切片是否已经递增排序,方法原型如下:
func StringsAreSorted(a []string) bool
下面是示例代码:
import (
"sort"
)
arr := ["a", "hello", "world", "b", "good", "x", "zZ", "A"]
println("排序前:", arr)
sort.Strings(arr)
println("排序前:", arr)
res := sort.StringsAreSorted(arr)
println("已经排序:", res)
上述代码输出结果:
排序前: [a hello world b good x zZ A] 排序前: [A a b good hello world x zZ] 已经排序: true
运行结果截图:
文章来源: liuzhen.blog.csdn.net,作者:Data-Mining,版权归原作者所有,如需转载,请联系作者。
原文链接:liuzhen.blog.csdn.net/article/details/121451184
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)