Go-标准库-sort(二)
发稿时间:2023-04-27 20:19:43 来源: 腾讯云
func Strings(a []string)
Strings函数对string类型的切片进行升序排序。
(相关资料图)
示例:
package mainimport ( "fmt" "sort")func main() { arr := []string{"apple", "banana", "pear", "orange", "grape"} sort.Strings(arr) fmt.Println(arr) // Output: [apple banana grape orange pear]}
func Reverse(data Interface) Interface
Reverse函数返回一个实现了sort.Interface接口的新对象,该对象可以对被排序的元素进行反向排序。
示例:
package mainimport ( "fmt" "sort")type myInts []intfunc (a myInts) Len() int { return len(a) }func (a myInts) Swap(i, j int) { a[i], a[j] = a[j], a[i] }func (a myInts) Less(i, j int) bool { return a[i] < a[j] }func main() { arr := myInts{3, 1, 4, 1, 5, 9, 2, 6, 5, 3} sort.Sort(sort.Reverse(arr)) fmt.Println(arr) // Output: [9 6 5 5 4 3 3 2 1 1]}
上面的例子中,我们定义了一个myInts类型,该类型实现了sort.Interface接口。然后,我们使用sort.Reverse函数对myInts类型的切片进行反向排序。
func Search(n int, f func(int) bool) int
Search函数使用二分查找算法在长度为n的有序切片中查找满足f函数的最小索引。如果不存在这样的索引,则返回n。
示例:
package mainimport ( "fmt" "sort")func main() { arr := []int{1, 3, 5, 7, 9} fmt.Println(sort.Search(len(arr), func(i int) bool { return arr[i] >= 5 })) // Output: 2}
上面的例子中,我们定义了一个长度为5的有序整型切片,并使用sort.Search函数查找大于或等于5的元素的最小索引。由于切片中的第3个元素为5,因此该函数返回2。
func SearchInts(a []int, x int) int
SearchInts函数使用二分查找算法在已排序的整型切片a中查找x的索引。如果x不存在于a中,则返回值为将x插入a后的索引。
示例:
package mainimport ( "fmt" "sort")func main() { arr := []int{1, 3, 5, 7, 9} fmt.Println(sort.SearchInts(arr, 5)) // Output: 2}
上面的例子中,我们定义了一个长度为5的有序整型切片,并使用sort.SearchInts函数查找5的索引。由于切片中的第3个元素为5,因此该函数返回2。
- Go-标准库-sort(二)
- 发现“深圳设计”创意之美 擦亮“设计之都”金色名片
- 扩大小微企业融资受益面 北京地区“政采贷”融资业务落地_视讯
- 牧原股份2022年营收首破千亿,净利大增超九成-世界速讯
- 全球视点!深交所上市委:艾芬达、科腾精工首发获通过
- 华夏银行总资产站上4万亿,去年净利润增长6.37% 天天即时看
- 环球报道:梅西会回到西甲吗?西甲与巴萨讨论梅西回归可能性据...
- 某运营商“卖掉”一家子公司!|今日报
- 第六年被蓝花楹刷屏了,它怎么还没过气? 当前速读
- excel平方根怎么打_excel平方根_天天热头条
- 环球微头条丨2023 ZOL慧买卖渠道选择奖 | 火星人智能集成灶X8
- 中联重科(01157)发布第一季度业绩 归属于上市公司股东的净利润约8.1亿元 同比减少10.63%
- 德银(DB.US)CFO:将争取从瑞信(CS.US)获取客户与员工
- 9000亿巨头,罕见大爆发!-世界资讯
- 榆阳法院拍卖榆林榆阳西路恒丰新世界房产一套,51万元起拍! 天天热消息
- 汽车电动化进入下半场 报告显示:智能座舱成竞争焦点
- 上海三毛:一季度净利266.37万元 同比增159.76%
- 牧原股份:2014年以来累计分红金额近140亿元
- 天秦装备一季度实现营收2735万元 拟布局兵工领域“黑灯工厂”_天天快播报
- 工信部:加快推进新型工业化,推动数字经济和实体经济深入融合
- 森马服饰:一季度净利增48.85%至3.11亿元 全球速讯
- 世界观焦点:假期出游遇上火灾,救命的防烟面罩你会用吗?
- 吴王阖闾和吴王夫差是一个人吗_吴王阖闾和吴王夫差 观速讯
- 中国生态状况稳中向好 生态系统质量持续改善
- 今日观点!赣州蓉江新区:情系困难党员 爱心捐款暖人心
- 防火瞭望员上千个日夜坚守:雨雪天才能回两公里外的家
- 全球通讯!事关五一出行!全是旅客关注热点
- 罕见!9000亿巨头涨停!沪指、A50暴拉 医药股再爆发 发生了什么?
- 中塘镇张港子村青少年巧手刻纸 感受非遗独特魅力
- 企业被列入经营异常名录有什么影响嘛_企业被列入经营异常名录有什么影响
延伸阅读
创业