在go语言中对字节片进行排序和反向排序代码示例

2023-06-01 00:00:00 示例 排序 中对

在go项目中,如何对一个字节片进行排序和反向排序?

解决方案

这里用到modernc.org/sortutil包,sortutil包提供了对标准 "sort "包的补充工具。

使用ByteSlice类型,并调用Sort()方法。

https://pkg.go.dev/modernc.org/sortutil#ByteSlice


示例代码:

package main

import (
        "fmt"
        "modernc.org/sortutil"
        "sort"
)

var bytes sortutil.ByteSlice = []byte("zxvfbac")

func main() {

        // Bytes
        fmt.Println("原文 : ", string(bytes[:]))
        fmt.Println("原文 : ", bytes[:])

        sort.Sort(bytes)

        fmt.Println("排序 : ", string(bytes[:]))
        fmt.Println("排序 : ", bytes[:])

        sort.Sort(sort.Reverse(bytes[:]))

        fmt.Println("反向 : ", string(bytes[:]))
        fmt.Println("反向 : ", bytes[:])

}

输出:

原文:zxvfbac
原文:[122 120 118 102 98 97 99]
排序:abcfvxz
排序:[97 98 99 102 118 120 122]
反向: zxvfcba
反向:[122 120 118 102 99 98 97]


相关文章:

在go语言中对字符串数组、切片(slice)进行排序和反向排序

在go语言中对整数数组、切片(slice)进行排序和反向排序

在go语言中对浮点的数组、切片(slice)进行正向排序和反向排序

相关文章