
go
sky_terra
这个作者很懒,什么都没留下…
展开
-
golang 中位数算法
题目:在给定数组中,找出第i小的数package mainimport "math/rand"/* * 中位数算法 */func RandomSelect(A []int, p, r, i int) int { if p == r { return A[p] } q := RandPartition(A, p, r) k := q - p + 1 if k == i { return A[q] } if i < k { return RandomS原创 2020-07-15 13:57:30 · 1356 阅读 · 0 评论 -
golang 插入排序
package mainimport "fmt"func main() { A := []int{3, 6, 9, 7, 8, 4, 2, 10} fmt.Println(A) InsertSort(A) fmt.Println(A)}func InsertSort(A []int) { for i := 1; i < len(A); i++ { x := A[i] j := i - 1 for j >= 0 && A[j] > x .原创 2020-07-14 10:10:18 · 131 阅读 · 0 评论 -
golang 堆排序
package mainfunc main() { A := []int{3, 6, 9, 7, 8, 4, 2, 10} fmt.Println(A) HeapSort(A) fmt.Println(A)}func Parent(i int) int { return (i - 1) / 2}func Left(i int) int { return 2*i + 1}func Right(i int) int { return 2*i + 2}func Ma.原创 2020-07-13 11:28:12 · 131 阅读 · 0 评论 -
golang打印panic到log文件
package mainimport ( "fmt" "runtime")func main() { defer func() { if r := recover(); r != nil { buff := make([]byte, 1<<10) runtime.Stack(buff, false) fmt.Printf("%v %v", r, string(buff)) } }() b := 10 b = b - 10 fmt.Pri...原创 2020-06-11 19:43:16 · 1443 阅读 · 0 评论 -
golang 使用mongo-go-dirver创建TTL索引, 过期自动删除数据
数据库:test_db, 数据表 test_table: id content expire_date 1 Good luck 2019-03-01 08:14:58.000 2 Good luck 2019-03-02 08:14:58.000 3 Good l...原创 2019-03-08 19:19:51 · 2910 阅读 · 0 评论