摘要:
package main import ( "fmt" "log" "sync" "time" ) type LRUCache struct { Caches map[string]NodeCache sync.Mutex } type NodeCache struct { Obj interfac 阅读全文
摘要:
package main import "fmt" func main() { arr := []int{8, 10, 2, 4, 3, 5, 1, 6, 7} fmt.Println(arr) heapSort(arr, len(arr)) fmt.Println(arr) } // 堆排序 fu 阅读全文
摘要:
package main import "fmt" func main() { arr := []int{10, 8, 2, 4, 3, 5, 1, 6, 7, 9} fmt.Println(arr) shellSort(arr) fmt.Println(arr) } func shellSort( 阅读全文
摘要:
package main import "fmt" var arr = []int{7, 6, 8, 3, 5, 2, 4, 9, 1, 0} var tmpArr = make([]int, len(arr)) func main() { fmt.Println(arr) quickSort(ar 阅读全文
摘要:
冒泡排序,小的数据不断从后面往前面冒泡 package main import "fmt" func main() { arr := []int{10, 2, 6, 8, 7, 5, 3, 4, 1, 9} fmt.Println(arr) bubbleSort(arr) fmt.Println(a 阅读全文
摘要:
package main import "fmt" func main() { arr := []int{10, 2, 6, 8, 7, 5, 3, 4, 1, 9} insertSort(arr) fmt.Println(arr) } func insertSort(arr []int) { fo 阅读全文
摘要:
package main import "fmt" func main() { arr := []int{10, 2, 6, 8, 7, 5, 3, 4, 1, 9} selectSort(arr) fmt.Println(arr) } func selectSort(arr []int) { ll 阅读全文
摘要:
package main import ( "fmt" ) var arr = []int{10, 5, 3, 9, 2, 3, 7, 8, 1, 25, 12} var arrTmp = make([]int, len(arr)) func main() { fmt.Println(arr) Me 阅读全文
摘要:
问题 给你 k 种面值的硬币,面值分别为 c1, c2 ... ck , 每种硬币的数量无限,再给一个总金额 amount , 问你最少需要几枚硬币凑出这个 金额,如果不可能凑出,算法返回 -1 思路 要凑出金额 11,至少要 dp(coins,11) 个硬币; 假如第一次凑1块,那么还有11-1块 阅读全文
摘要:
问题 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数 实现思路: 1. 递归:踏上第n台阶之前,可能位于 第n-1个台阶 或 第n-2个台阶 2. 备忘map:缓存已经算过的记录,减少子问题个数,降 阅读全文