Go语言学习#6-如何进行sort排序

=Start=

缘由:

在用Python和Shell进行日志分析的时候,很常见的一个需求就是——先把某个字段作为key进行去重/计数统计,然后按次数或是内容进行排序统计。刚好最近在学习Go语言,所以想着看能不能学习一下如何用Go语言进行实现,方便以后快速参考改写。

正文:

参考解答:
// 针对「整数」切片的排序

// 针对「字符串」切片的排序

// 针对「浮点型」切片的排序

 

// 「降序/逆序」该如何实现?

// 根据 keys 对 map 进行排序

先建立一个 slice 用于存放单纯针对 keys 的排序结果,然后在打印或使用的时候借助这个额外的 slice来进行升序或降序排列。

// 根据 values 对 map 进行排序

// 要对Go 语言的map按照value进行排序,思路是直接不用map,用struct存放key和value,实现对应类型的sort接口(需实现Swap/Len/Less这3个方法),然后就可以调用sort.Sort进行排序了。

/* 根据 value 进行排序 */
http://localhost:8080/pkg/sort/#example_

/* 根据多个 value 中的其中一个进行排序 */
http://localhost:8080/pkg/sort/#example__sortKeys

/* 根据多个 value 的组合进行排序 */
http://localhost:8080/pkg/sort/#example__sortMultiKeys

 

参考链接:

=END=

声明: 除非注明,ixyzero.com文章均为原创,转载请以链接形式标明本文地址,谢谢!
https://ixyzero.com/blog/archives/4137.html

《Go语言学习#6-如何进行sort排序》上有1条评论

  1. Go实战–golang中各种排序算法实现以及生成随机数
    https://blog.csdn.net/wangshubo1989/article/details/75135119

    使用 Go 实现快速排序
    http://colobu.com/2018/06/26/implement-quick-sort-in-golang/

    golang实现常用排序算法(一)
    https://blog.csdn.net/benben_2015/article/details/79231929

    go语言十大排序算法总结
    https://blog.csdn.net/guoer9973/article/details/51924715

    Golang实现七大排序(2)
    https://blog.csdn.net/suiban7403/article/details/78699229

发表评论

电子邮件地址不会被公开。 必填项已用*标注