![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
剑指offer
星霜换得浮生梦
code4life
展开
-
go实现字符串匹配,Sunday法
package mainimport "fmt"//字符串匹配func catch(a, b string) bool { i := 0 j := 0 for i < len(a) { if a[i] == b[j] { i++ j++ if j == len(b) { return true } continue } if...原创 2020-03-09 16:46:58 · 527 阅读 · 0 评论 -
go实现所有无重复子串
package mainimport ( "fmt" "reflect" "sort")var c [][]int//所有无重复子串func main() { a := []int{2, 1, 2, 2} sort.Ints(a) b := []int{} son(0, a, b) fmt.Println(c)}func son(num int, a, b ...原创 2020-03-09 16:45:45 · 114 阅读 · 0 评论 -
go两个队列实现栈
package mainimport ( "container/list" "fmt")type Queue struct { queue1 *list.List queue2 *list.List}//两个队列实现栈func (q *Queue) Pop() *list.Element { for q.queue1.Len() > 1 { q.queue2...原创 2020-03-10 16:17:41 · 321 阅读 · 0 评论 -
go实现LRU
package mainimport ( "container/list")// Cache 代表LRU缓存实现,暂时未考虑线程安全type Cache struct { // MaxEntries 表示缓存容量的最大值,0表示是一个空缓存 MaxEntries int ll *list.List cache map[string]*list.Element}...原创 2020-03-09 16:42:08 · 205 阅读 · 0 评论 -
go实现字符串最长回文子串
package mainimport ( "fmt")//求字符串的最长回文子串有多长func main() { a := "abaa" b := getSon(a) fmt.Println(b)}func getSon(s string) int { length := len(s) dp := make([][]int, length) for k := ra...原创 2020-03-09 16:41:16 · 216 阅读 · 0 评论 -
go实现最长递增子序列
package mainimport ( "fmt")//最长递增子序列func main() { a := []int{1, 4, 3, 4, 2, 3} b := lengthOfLIS(a) fmt.Println(b)}func lengthOfLIS(nums []int) int { dp := make([]int, len(nums)) ans :=...原创 2020-03-09 16:40:14 · 143 阅读 · 0 评论 -
go实现无重复最长子串
package mainimport ( "fmt" "strings")//无重复最长子串func lengthOfLongestSubstring(s string) int { i, j := 0, 1 length := len(s) max := 1 sons := "" if length <= 1 { return length } sons...原创 2020-03-09 16:38:31 · 122 阅读 · 0 评论 -
go语言实现八皇后
package mainimport "fmt"var result [][]string//八皇后问题func main() { allNum := make([][]int, 8) for k, _ := range allNum { allNum[k] = make([]int, 8) for key, _ := range allNum[k] { allN...原创 2020-03-09 16:33:48 · 188 阅读 · 0 评论 -
go语言实现可重复数组的全排列
package mainimport ( "fmt" "reflect")var allNum [][]intvar isTrue []bool//可重复数组的全排列func main() { a := []int{1, 2, 3, 3, 5} p := []int{} isTrue = make([]bool, len(a)) for k := range isT...原创 2020-03-09 16:31:54 · 288 阅读 · 0 评论 -
剑指offer—可以使用go语言的测试平台
之前在牛客网发现没有go版本的测试,后来找到了这个网站:ACWING,有剑指offer、leetcode以及各个大厂的面试题,并且都可以用go语言来进行编写测试。网址:https://www.acwing.com/同时非常感谢建立该网站和在里边编写题解的大佬们。...原创 2019-04-10 22:31:05 · 947 阅读 · 0 评论