前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Go Slice Sort 数组排序简单实例

Go Slice Sort 数组排序简单实例

作者头像
一个会写诗的程序员
发布2022-05-31 10:23:07
3900
发布2022-05-31 10:23:07
举报
文章被收录于专栏:一个会写诗的程序员的博客
代码语言:javascript
复制
// {f1,f2} -> f2(f1(
func getComposeIndexFuncsLeft(funcs []string) string {
    if nil == funcs || len(funcs) == 0 {
        return ""
    }
    // reverse
    sort.Sort(sort.Reverse(sort.StringSlice(funcs))) // 有点绕
    bb := new(bytes.Buffer)
    // foreach
    for _, f := range funcs {
        bb.WriteString(f)
        bb.WriteString("(")
    }
    return bb.String()
}

// {f1,f2} -> ))
func getComposeIndexFuncsRight(funcs []string) string {
    if nil == funcs || len(funcs) == 0 {
        return ""
    }
    bb := new(bytes.Buffer)
    // foreach
    size := len(funcs)
    for i := 0; i < size; i++ {
        bb.WriteString(")")
    }
    return bb.String()
}

Reverse 逆序实现:

代码语言:javascript
复制
func reverse(s [] interface) [] interface {
    for i, j := 0, len(s)-1; i < j; i, j = i+1, j-1 {
        s[i], s[j] = s[j], s[i]
    }
    return s
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档