golang 排序 隨機數工具 二分查詢

2021-10-24 21:21:53 字數 2012 閱讀 8367

package main

import (

"fmt"

"sort"

)type person struct

func (p person) string() string

// byage implements sort.inte***ce for person based on

// the age field.

type byage person

func (a byage) len() int

func (a byage) swap(i, j int)

func (a byage) less(i, j int) bool

/*func float64s(a float64)

將型別為float64的slice a以公升序方式進行排序

func float64saresorted(a float64) bool

判定是否已經進行排序func ints(a int)

func ints(a int)

以公升序排列 int 切片。

func intsaresorted(a int) bool

判斷 int 切片是否已經按公升序排列。

func issorted(data inte***ce) bool

判斷資料是否已經排序。包括各種可sort的資料型別的判斷.

func strings(a string)

以公升序排列 string 切片。

func stringsaresorted(a string) bool

判斷 string 切片是否已經按公升序排列。

func sort(data inte***ce)

對 data 進行排序(不保證相等元素的相對順序不變)

data 預設為公升序,執行 reverse 後為降序。

func stable(data inte***ce)

對 data 進行排序(保證相等元素的相對順序不變)

data 預設為公升序,執行 reverse 後為降序。

func reverse(data inte***ce) inte***ce

將 data 的排序動作更改為降序,reverse 並不改變元素順序,只改變排序行為。

更改操作不可逆,更改後的物件不可以再次 reverse。

*/func main() ,

, ,

, }sort.sort(byage(people))

fmt.println(people)

}

package main

import (

"fmt"

"math/rand"

"time"

)func main()

/*隨機數

開始數字

結束陣列

生成多少個(返回的是個陣列,這裡是開始到結束範圍內,不重複的數子)

*/func generaterandomnumber(start int, end int, count int) int

nums := make(int, 0)

r := rand.new(rand.newsource(time.now().unixnano()))

for len(nums) < count

} if !exist

} return nums

}

package main

import (

"fmt"

"sort"

)func main()

a.sort() // 二分法必須先排序

// 獲取首字母大於 n 的元素中最小的

i := sort.search(len(a), func(i int) bool )

// 顯示找到的元素

fmt.println(a[i]) // sort

}

golang隨機數採坑

突然發現golang產生的隨機數並不是那麼隨機而是有一定規律的 先看一段 package main import fmt time math rand func main 我想產生乙個隨機5分鐘的休眠,而現實是我有大量的客戶端請求api,這個請求實時性要求並不高,為了避免所有客戶端同一時間請求api...

生成隨機數工具

部落格主頁 寫測試 的時候經常需要產生一堆隨機數,比如排序時定義乙個鍊錶,手動輸入一串隨機數總是很麻煩。如 listlist lists.newarraylist 37,96,81,13,49,20,64,56,22,86,60,20,80,1,98,70,71,12,10,44,89,48,20,...

產生隨機數工具類

package com.qiyuan.util import org.apache.commons.lang.randomstringutils import org.apache.commons.lang.math.randomutils public class randomnumberutil...