
算法
vinacky
这个作者很懒,什么都没留下…
展开
-
卡车穿越沙漠问题
一辆重型卡车欲穿过1000公里的沙漠,卡车耗油为1升每公里。卡车总载油量为500升。显然卡车装一次油是过不了沙漠的,因此司机需要设法在沿途建立几个加油点,(加油点的油也是由卡车从起始点运送过去的)试问,司机如何建立这些储油点,每一储油点需要存多少汽油,使得最后耗油总量最少(包括运油的耗油等等)。思路:设a[i]为倒数第i+1个储油点与终点的距离;b[i]为倒数第i+1个储油点储油量。首先应...原创 2013-05-18 01:18:53 · 5129 阅读 · 0 评论 -
全错位排列
f(n)=(n-1)*(f(n-1)+f(n-2))a,b,c,d……封信,A,B,C,D……个信封,全错有f(n)种;1.a放B中,b放A中,则剩下的有f(n-2)种;2.a放B中,b不放A中,相当于,除了a,A,A变成B,于是有f(n-1)种;a和b的关系如上,a和c,a和d……共n-1种。于是可得公式~f(n)=(n-1)*(f(n-1)+f(n-2))原创 2013-10-01 16:16:33 · 630 阅读 · 0 评论 -
KMP
关于字符串的算法KMP在网上看到一篇很不错的讲解,非常清晰点击打开链接两个字符串相匹配,对模式串构造next数组,记录匹配到此如果不相同应当在被匹配的字符串哪一位 开始新的匹配,整个匹配过程呈线性复杂度。其中next数组j记录-1表示从被匹配字符串该位开始匹配,模式串从next[j],否则被匹配字符串从下一位卡开始,,模式串从next[j].转载 2015-05-08 21:42:03 · 410 阅读 · 0 评论 -
线切割平面问题
直线切割平面当一个平面上没有直线的时候,可以看成被分成了1份;有1条直线的时候,没有结点,多了1部分;有2条直线的时候,多了1个节点,多了2部分;有3条直线的时候,多了2个节点,多了3部分;······ 第n条直线 0 1 2 3 ...原创 2013-05-22 08:42:29 · 1998 阅读 · 0 评论 -
leetcode Best Time to Buy and Sell Stock 121 122 309 714 123 188
股票买卖系列问题说了这么多年的“状态转移方程”这个词,今天似乎有了新的理解。。。动态规划问题可以有等价的状态机。以前更多的情况是在一个数组中根据相应的转移条件计算当前的值,这一系列问题,需要维护多个数组,正好可以很方便的画出状态机的图。从易到难记录一下leetcode中这个系列的题。 121 Best Time to Buy and Sell Stock ...原创 2018-07-24 23:09:14 · 168 阅读 · 0 评论