03 2021 档案
摘要:二分查找的思想:拿到有序数组的首尾下标,然后取中间值跟需要查找的值对比,如果中间值等于查找值则返回下标,如果中间值大于查找值则继续查找左边区块,如果中间值小于查找值则继续查找左边区块,如果查找不到则返回-1,查找结束。 package main import "fmt" func binarySea
阅读全文
摘要:package main import "fmt" func intersection(s1, s2 []int) []int{ m := make(map[int]int) for k := range s1{ m[s1[k]] += 1 } var a []int for k := range
阅读全文
摘要:反转前的链表:A->B->C->D->E->F->G->H->I->J->K->L->M->N->O->P->Q->R->S->T->U->V->W->X->Y->Z反转后的链表:Z->Y->X->W->V->U->T->S->R->Q->P->O->N->M->L->K->J->I->H->G->
阅读全文
摘要:package main import ( "fmt" "math/rand" "time" ) // 二分法判断某个值是否在数组中存在,如果存在则返回所在的位置,不存在则返回-1 func dichotomy(a []int, value int, position ...int ) int {
阅读全文