分类 算法 中的文章

移除链表元素

题目: 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点,具体见链接 LeetCode-203 相关代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 package main import "fmt" type ListNode struct { Val int Next *ListNode } //crete linklist func CreateNode(node *ListNode, max int) { cur := node for i := 1; i < max; i++ {……

阅读全文

Fibonacci

斐波那契数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 package main import "fmt" //动态规划 func fib(n int) int { if n < 2 { return n } nums := make([]int, n) nums[0], nums[1] = 1, 1 for i := 2; i < n; i++ { // nums[i] = (nums[i-1] + nums[i-2]) % 1000000007 nums[i] = nums[i-1] + nums[i-2] } return nums[n-1] } //递归 func fib01(n int) int { if n < 2 { return n } return fib01(n-1) + fib01(n-2) } func main() { var n int fmt.Scanln(&n) fmt.Println(fib(n)) fmt.Println("the fib01 is ", fib01(n)) }……

阅读全文