当前位置: 首页 > news >正文

成都需要网站制作河北网站开发哪家好

成都需要网站制作,河北网站开发哪家好,wordpress最简单模板,360建筑网如何删除自己的信息文章目录 前言按key排序按value排序统计字符串中元素重复出现次数并将结果排序返回 前言 由于map是无序的,所以排序成 slice 返回,且都使用泛,代码只是示例,省略了错误判断 按key排序 package mainimport "fmt"func example[T c…

文章目录

        • 前言
        • 按key排序
        • 按value排序
        • 统计字符串中元素重复出现次数并将结果排序返回

前言

由于map是无序的,所以排序成 slice 返回,且都使用泛,代码只是示例,省略了错误判断

按key排序

package mainimport "fmt"func example[T comparable, S any](source map[T]S, assert func(a, b T) bool) []S {var (i []Tj []S)for k, _ := range source {i = append(i, k)}result := sort(i, assert)for _, k := range result {j = append(j, source[k])}return j
}func sort[T any](source []T, assert func(a, b T) bool) []T {for i := 0; i < len(source); i++ {for j := i + 1; j < len(source); j++ {if assert(source[i], source[j]) {source[j], source[i] = source[i], source[j]}}}return source
}func main() {s := example(map[int]string{2: "b", 1: "a", 3: "c"}, func(a, b int) bool {return a > b})fmt.Println(s) //[c,b,a]
}

按value排序

package mainimport "fmt"func example[T comparable, S any](source map[T]S, assert func(a, b S) bool) []S {var (i []S)for _, v := range source {i = append(i, v)}return sort(i, assert)
}func sort[T any](source []T, assert func(a, b T) bool) []T {for i := 0; i < len(source); i++ {for j := i + 1; j < len(source); j++ {if assert(source[i], source[j]) {source[j], source[i] = source[i], source[j]}}}return source
}func main() {s := example(map[int]int{3: 2, 2: 1, 1: 3}, func(a, b int) bool {return a > b})fmt.Println(s)
}

统计字符串中元素重复出现次数并将结果排序返回

package mainimport "fmt"type count struct {value stringcount int
}func example(s string) []count {var countSlice []countm := make(map[string]int, len(s))for _, char := range s {m[string(char)]++}for k, v := range m {countSlice = append(countSlice, count{count: v, value: k})}return sort(countSlice, func(a, b count) bool {return a.count > b.count})
}func sort[T any](source []T, assert func(a, b T) bool) []T {for i := 0; i < len(source); i++ {for j := i + 1; j < len(source); j++ {if assert(source[i], source[j]) {source[j], source[i] = source[i], source[j]}}}return source
}func main() {s := example("abaabccccc")fmt.Println(s) //[{b 2} {a 3} {c 5}]
}
http://www.yayakq.cn/news/192723/

相关文章:

  • 网站建设公司管理流程网站突然被降权
  • 东莞最好的网站wordpress如何上传视频
  • 电子商务网站建设与管理实训网站开发语言更换
  • 做界面的网站新网 网站空间
  • 杭州网站程序开发公司广东设计公司排名前十强
  • thinkphp官方网站博罗东莞网站建设
  • 网站建设广告图做网站客户怎么找
  • 苏州做网站公司认定苏州聚尚网络怎么查网站哪里做的
  • 常州建站网站模板网站建设管理工作经验介绍
  • 网站网格布局云电脑平台哪个最好
  • iis7 网站 目录织梦网站可以微信登录吗
  • 做动图素材网站网站建设及推广套餐
  • 怎么做卖车网站网站建设的课程设计
  • 济南网站优化小黑网站推广目标是什么
  • 网站建设模板代码下载有一个网站怎么做cpc
  • 企业网站建设需要哪些费用大连建设网站的公司
  • 杯子电子商务网站的建设建设门户网站的目的
  • 柳州网站专业网站优化外包
  • 大气宽屏企业网站源码红色页面网站
  • 如何将自己做的网站传到网上wordpress+培训模板
  • 沧州市建设服务中心网站免备案免费域名
  • 制作网站一般是多大陕西省信用建设官方网站
  • 微网站开发做英文网站需要多少
  • 郑州做网站公司专注成都网站建设及推广
  • 中国建网站报价中国建筑网上测评
  • 单位网站建设费用什么会计科目碧桂园房地产最新消息
  • 零基础建设网站教程大量word发布wordpress
  • 淘宝客必须建网站吗wordpress颜色代码
  • 物流网站 源码ae成品免费下载网站
  • Wordpress建站安装教程图解定制网站开发是什么