随笔分类 - 算法
摘要:时间:2022/12/28 问题: 背包的最大重量为4。每个物品只有一个,物品重量及价值如下所示: 重量 价值 物品0 1 15 物品1 3 20 物品2 4 30 问背包能背的物品最大价值是多少? 上面这个题目是一个典型的01背包问题,可以通过构建一个二维dp数组来进行求解,这种方式比较容易理解。
阅读全文
摘要:时间:2022/10/12 一. next数组原理的说明 KMP算法一般用于解决字符串匹配的问题,在KMP算法出现之前,字符串匹配一般通过双层for循环的暴力方法解决,时间复杂度为O(n*m),其中n为主串的长度,m为子串的长度。而KMP算法的出现使字符串匹配的时间复杂度减少到O(n+m),他的主要
阅读全文
摘要:时间:2022/09/21 一. 引入-斐波那契数列 下图展示了斐波那契数列数列的递归式: 然后我们再看一下在计算fib(7)的时候会出现什么问题: 如上图所示,在计算fib(7)的时候,它会计算fib(6)和fib(5),然后在计算fib(6)的时候又会把fib(5)再计算一遍,这就会出现重复计算
阅读全文
摘要:时间:2021/03/03 下面这篇博文对快速幂算法讲解非常清晰,膜拜: https://blog.csdn.net/qq_19782019/article/details/85621386
阅读全文