算法
独步计院
这个作者很懒,什么都没留下…
展开
-
散列表、散列函数
直接寻址法,浪费空间。散列函数: (1)除法函数:h(k)=kmodmh(k) = k mod mm的选择:一个不太接近2的幂次的素数。 (2)乘法函数:h(k)=m∗(kAmod1)h(k)= m * (kA mod 1)k乘以A之后取小数部分再乘以m.在这里m的选择不是重点。通过散列函数将k映射到一个值最容易造成冲突。解决冲突的两种方法: (1)链表法:顾名思义 (2)开放寻址法:原创 2016-08-28 20:22:33 · 406 阅读 · 0 评论 -
动态规划心得总结(陆续添加...)
动态规划: 这里首先要明确子问题是什么。子问题的最优解构成了最终目标问题的最优解。 这句话就要深入理解,最终问题的子问题有多个,比如钢条切割问题中(详见算法导论)从不同位置切割划分出不同的子问题,但是在这些子问题当中,一定有一个构成了最优解,那么我们把所有的子问题都找出来。 这里找出所有的子问题相当于找出最后一步的所有子问题,然后在在子问题中去找子问题,要注意的是与枚举所有可能的情况不同,比原创 2016-08-29 15:42:46 · 673 阅读 · 0 评论 -
从头到尾彻底理解KMP
从头到尾彻底理解KMP 作者:July 时间:最初写于2011年12月,2014年7月21日晚10点 全部删除重写成此文,随后的半个多月不断反复改进。后收录于新书《编程之法:面试和算法心得》第4.4节中。 1. 引言 本KMP原文最初写于2年多前的2011年12月,因当时初次接触KMP,思路混乱导致写也写得混乱。所以一直想找机转载 2016-08-10 13:42:35 · 600 阅读 · 0 评论