日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

Go 語言中排序的三種方法

來源: 責編: 時間:2023-08-20 23:17:15 3485觀看
導讀在寫代碼過程中,排序是經常會遇到的需求,本文會介紹三種常用的方法。廢話不多說,下面正文開始。使用標準庫根據場景直接使用標準庫中的方法,比如:sort.Intssort.Float64ssort.Strings舉個例子:s := []int{4, 2, 3, 1}sort.I

Q3k28資訊網——每日最新資訊28at.com

在寫代碼過程中,排序是經常會遇到的需求,本文會介紹三種常用的方法。Q3k28資訊網——每日最新資訊28at.com

廢話不多說,下面正文開始。Q3k28資訊網——每日最新資訊28at.com

使用標準庫

根據場景直接使用標準庫中的方法,比如:Q3k28資訊網——每日最新資訊28at.com

  • sort.Ints
  • sort.Float64s
  • sort.Strings

舉個例子:Q3k28資訊網——每日最新資訊28at.com

s := []int{4, 2, 3, 1}sort.Ints(s)fmt.Println(s) // [1 2 3 4]

自定義比較器

使用 sort.Slice 方法排序時,可以自定義比較函數 less(i, j int) bool,這樣就可以根據需要按不同的字段進行排序。Q3k28資訊網——每日最新資訊28at.com

如果想要穩定排序的話,就使用 sort.SliceStable 方法。Q3k28資訊網——每日最新資訊28at.com

舉個例子:Q3k28資訊網——每日最新資訊28at.com

family := []struct {    Name string    Age  int}{    {"Alice", 23},    {"David", 2},    {"Eve", 2},    {"Bob", 25},}// Sort by age, keeping original order or equal elements.sort.SliceStable(family, func(i, j int) bool {    return family[i].Age < family[j].Age})fmt.Println(family) // [{David 2} {Eve 2} {Alice 23} {Bob 25}]

自定義數據結構

使用 sort.Sort 或者 sort.Stable 方法,它們可以對任意實現了 sort.Interface 的數據結構排序。Q3k28資訊網——每日最新資訊28at.com

type Interface interface {    // Len is the number of elements in the collection.    Len() int    // Less reports whether the element with    // index i should sort before the element with index j.    Less(i, j int) bool    // Swap swaps the elements with indexes i and j.    Swap(i, j int)}

意思就是說,只要某一個數據結構實現了 Len() int,Less(i, j int) bool 和 Swap(i, j int) 這三個方法,那么就可以使用 sort.Sort 來排序。Q3k28資訊網——每日最新資訊28at.com

舉個例子:Q3k28資訊網——每日最新資訊28at.com

type Person struct {    Name string    Age  int}// ByAge implements sort.Interface based on the Age field.type ByAge []Personfunc (a ByAge) Len() int           { return len(a) }func (a ByAge) Less(i, j int) bool { return a[i].Age < a[j].Age }func (a ByAge) Swap(i, j int)      { a[i], a[j] = a[j], a[i] }func main() {    family := []Person{        {"Alice", 23},        {"Eve", 2},        {"Bob", 25},    }    sort.Sort(ByAge(family))    fmt.Println(family) // [{Eve 2} {Alice 23} {Bob 25}]}

字典排序

我們都知道,字典是無序的,具體原因可以看之前寫的這篇文章 Go 語言 map 如何順序讀取?Q3k28資訊網——每日最新資訊28at.com

如果想要字典按 key 或者 value 排序的話,可以這樣做。Q3k28資訊網——每日最新資訊28at.com

m := map[string]int{"Alice": 2, "Cecil": 1, "Bob": 3}keys := make([]string, 0, len(m))for k := range m {    keys = append(keys, k)}sort.Strings(keys)for _, k := range keys {    fmt.Println(k, m[k])}// Output:// Alice 2// Bob 3// Cecil 1

以上就是本文的全部內容。Q3k28資訊網——每日最新資訊28at.com

參考文章:

  • https://yourbasic.org/golang/how-to-sort-in-go/#performance-and-implementation

本文鏈接:http://www.www897cc.com/showinfo-26-6191-0.htmlGo 語言中排序的三種方法

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: SpringBoot中的敏感信息的配置進行加密處理,這種方式你知道嗎?

下一篇: H5-Dooring可視化頁面制作神器測評總結

標簽:
  • 熱門焦點
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
欧美成人午夜激情视频| 国产精品扒开腿做爽爽爽软件| 亚洲欧美日韩中文播放| 午夜宅男久久久| 久久一区二区精品| 欧美日本一区| 国产麻豆视频精品| 伊人夜夜躁av伊人久久| 亚洲理论在线| 亚洲福利久久| 一区精品在线播放| 国语精品中文字幕| 亚洲人成在线观看一区二区| 亚洲一二三区视频在线观看| 久久精品亚洲一区| 欧美精品高清视频| 国产日韩一区二区三区| 亚洲黄色成人| 亚洲欧美在线播放| 欧美成人精品一区| 母乳一区在线观看| 国产精品伦理| 亚洲高清色综合| 亚洲国产精品成人久久综合一区| 一本色道久久加勒比88综合| 在线综合视频| 亚洲欧美日韩在线不卡| 老司机凹凸av亚洲导航| 欧美mv日韩mv国产网站app| 国产精品高潮在线| 亚洲电影免费在线| 午夜精品福利在线| 久久精品一区中文字幕| 欧美日韩一区二区三区| 激情五月婷婷综合| 亚洲一区区二区| 暖暖成人免费视频| 国产日产欧产精品推荐色| 亚洲毛片一区二区| 久久综合网络一区二区| 国产精品人人爽人人做我的可爱 | 欧美精品久久99| 国产一区二区三区奇米久涩| 影音先锋在线一区| 亚洲欧美美女| 欧美日韩精品综合| 尤物精品在线| 欧美在线视频二区| 国产精品久久看| 99视频国产精品免费观看| 另类av一区二区| 国产日产欧美一区| 亚洲一区在线直播| 欧美日韩在线精品| 亚洲精品久久久久中文字幕欢迎你| 99精品免费网| 欧美a级大片| 激情欧美日韩一区| 欧美一区三区三区高中清蜜桃| 欧美视频三区在线播放| 亚洲精品一区二区三区在线观看 | 亚洲精品国产视频| 欧美手机在线视频| 欧美xart系列高清| 亚洲欧美日产图| 亚洲三级国产| 欧美理论在线播放| 国产精品夫妻自拍| 9l视频自拍蝌蚪9l视频成人| 欧美大片在线看| 亚洲一区图片| 亚洲国产美女| 极品裸体白嫩激情啪啪国产精品| 欧美激情偷拍| 久久只精品国产| 在线观看日韩| 国产欧美精品| 欧美一区二区视频在线观看2020| 国产精品视频在线观看| 久久琪琪电影院| 亚洲在线中文字幕| 久久精品国产精品亚洲综合| 欧美激情片在线观看| 久久午夜av| 狠狠做深爱婷婷久久综合一区| 久久国产99| 国产亚洲福利社区一区| 久久综合网络一区二区| 亚洲精品国精品久久99热| 欧美不卡三区| 亚洲人成亚洲人成在线观看| 欧美国产亚洲另类动漫| 日韩视频久久| 国产美女精品视频| 欧美一区二区视频在线观看| 国产亚洲成av人片在线观看桃| 亚久久调教视频| 国内外成人在线| 亚洲四色影视在线观看| 国产精品国产三级国产aⅴ9色| 亚洲午夜精品久久| 欧美另类视频在线| 亚洲深夜av| 国产美女高潮久久白浆| 久久久久九九九九| 亚洲欧洲一区| 欧美成人精品不卡视频在线观看 | 国产一区二区三区最好精华液| 久久久99国产精品免费| 亚洲国产精品va| 欧美日韩网站| 欧美一区成人| 国产精品一区久久| 久久久人成影片一区二区三区| 亚洲成在人线av| 欧美日韩国产免费观看| 亚洲欧洲99久久| 精品成人一区二区三区四区| 欧美黑人多人双交| 亚洲中字黄色| 在线观看成人小视频| 欧美日韩精品一区二区三区四区 | 欧美专区一区二区三区| 亚洲国产毛片完整版| 国产精品盗摄一区二区三区| 久久9热精品视频| 国产欧美1区2区3区| 久久在线播放| 一区二区三区日韩欧美| 欧美日韩国产免费观看| 午夜精品福利电影| 在线观看久久av| 欧美日韩在线视频一区二区| 久久超碰97中文字幕| 亚洲三级免费| 国产偷自视频区视频一区二区| 欧美成人精品在线播放| 亚洲欧美一区二区三区在线| 亚洲国产欧美一区二区三区丁香婷| 国产精品v日韩精品| 久久亚洲国产成人| 亚洲在线一区| 亚洲人成毛片在线播放| 国产日韩欧美一区二区| 欧美日韩大片| 久久久噜噜噜| 亚洲午夜在线视频| 亚洲高清毛片| 国产日韩欧美a| 欧美日韩另类综合| 久久天堂国产精品| 亚洲专区一区二区三区| 亚洲精品黄色| 影音先锋成人资源站| 国产精品入口福利| 欧美人与禽猛交乱配视频| 久久久免费观看视频| 亚洲综合丁香| 99综合视频| 亚洲成人在线免费| 国产亚洲欧洲一区高清在线观看| 欧美日韩亚洲一区| 欧美二区在线播放| 久久久久免费观看| 香蕉久久精品日日躁夜夜躁| 9l视频自拍蝌蚪9l视频成人 | 欧美一区二区高清| 亚洲午夜电影网| 亚洲毛片网站| 亚洲国产成人不卡| 激情久久久久久| 国产亚洲a∨片在线观看| 国产精品久久久久久模特| 欧美日本韩国在线| 欧美韩日高清| 欧美成人午夜剧场免费观看| 久久蜜臀精品av| 欧美在线日韩精品| 性欧美精品高清| 亚洲欧美日本另类| 亚洲永久在线| 亚洲五月婷婷| 亚洲深夜福利在线| 一区二区三区欧美| 艳女tv在线观看国产一区| 亚洲精品免费电影| 亚洲人成网站777色婷婷| 亚洲电影天堂av| 亚洲国产精彩中文乱码av在线播放| 狠狠色2019综合网| 韩国一区二区在线观看| 国内成人精品视频| 国产一区二区三区久久精品| 国产精自产拍久久久久久蜜| 国产精品乱子久久久久| 久久成人国产精品| 欧美一区二区三区视频| 午夜天堂精品久久久久| 亚洲欧美另类中文字幕| 午夜精品在线看| 欧美在线免费一级片| 欧美一区二区三区在线免费观看| 先锋影音久久久| 久久不射2019中文字幕|