golang之切片与排序


1.排序与查找操作

排序操作在sort包中,sort.Ints对整数进行排序,sort.Strings对字符串进行排序,sort.Float64对浮点数进行排序

package main

import (
    "fmt"
    "sort"
)

func testIntSort() {
    var a = [...]int{1, 8, 38, 2, 348, 484}
    //数组是值类型,不能直接排序,必须转为切片
    sort.Ints(a[:])
    fmt.Println(a)
}
func testStrings() {
    var a = [...]string{"abc", "efg", "b", "A", "eeee"}
    //按照字母顺序排序,从小到大
    sort.Strings(a[:])
    fmt.Println(a)
}

func testFloat() {
    var a = [...]float64{2.3, 0.8, 28.2, 392342.2, 0, 6}
    //从小到大排序
    sort.Float64s(a[:])
    fmt.Println(a)
}
func testIntSearch() {
    var a = [...]int{1, 8, 38, 2, 348, 484}
    //数组是值类型,不能直接排序,必须转为切片
    sort.Ints(a[:])
    //SearchInts默认排序后的位置,一定要排序后在查找
    index:=sort.SearchInts(a[:],348)

    fmt.Println(index)
}

func main() {
    testIntSort()
    testStrings()
    testFloat()
    testIntSearch()
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM