算法拙见
根据自己的acm经历,讲解自己对于图论,数论,博弈论,网络流,数据结构等领域的算法的理解,角度更偏向于对算法的理解,和算法中的贪心等思想的证明
黎辰
其实一切只为一个理由,一切理由在一个人面前也都沦为借口
展开
-
关于2-sat的建图方法及解决方案
-------------------------------------------------对于2-sat问题的描述-------------------------------------------------给出一个序列,每个数是一个bool值,给出一些限制关系,得到最终的可行解的问题叫做适应性问题,也就是sat问题,2-sat问题就是给出的限制最多是两两元素之间的限制。这种适原创 2015-07-29 14:23:28 · 4158 阅读 · 1 评论 -
关于强连通分量的一些理解(tarjan版本)
------------------------------------------概念部分----------------------------------------------------------------强连通是在有向图当中提出的概念,代表点点之间都可以互相达到下面说几个具体的概念:顶点强连通:在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strong原创 2015-07-29 12:42:24 · 1297 阅读 · 0 评论 -
关于差分约束系统的建图方法
差分约束系统只是对最短路算法的一种应用,没有什么新的算法,只是对于具体问题的建图方法的确定----------------------------------------------差分约束系统解决的问题描述---------------------------------------------------------差分约束系统解决的问题是不等式组的求解:X1 - X2 X1原创 2015-07-29 12:17:06 · 2133 阅读 · 0 评论 -
关于二分图匹配的基本应用的一些见解(最大独立点集、最小点覆盖、最小路径覆盖)
------------------------------------------------------最大独立点集-------------------------------------------------------------在一个二分图中,能够选取的最大的点的集合,其中的任意两个点相互都不连接我的理解:首先定义两个点集,一个点集命名为S,就是最大独立点集,另一个点集命原创 2015-07-17 20:05:56 · 1693 阅读 · 0 评论 -
关于最短路径算法的理解
最短路径的算法主要是解决两个问题:1.单源最短路2.任意两点间的最短路主要有三个算法来解决这两个问题:1.单源最短路:dijkstra算法,spfa算法2.任意两点间的最短路:floyd算法----------------------------------------dijkstra单源最短路算法--------------------------------------原创 2015-07-19 18:17:39 · 1350 阅读 · 3 评论 -
关于最小生成树算法的理解
生成树:连通图中取出一个子图,包括所有的点且是一棵树。(任意两点之间一条路径)最小生成树:一个连通图中边权之和最小的生成树求最小生成树的算法主要有两个:prim算法和kruskal算法,那么我们接下来分别来了解一下:--------------------------------------------------prim算法----------------------------原创 2015-07-19 21:02:03 · 949 阅读 · 0 评论 -
关于二分图最大匹配--匈牙利算法的理解
二分图:图的点可以分为两个集合,记为S,T,其中每个集合的点之间不存在边二分图的最大匹配:每个点都只能用一次的情况,能够保留最多的边的条数一般求最大匹配采用的匈牙利的算法,下面介绍以下匈牙利算法-----------------------------------------匈牙利算法---------------------------------------------------原创 2015-07-19 21:58:53 · 1822 阅读 · 0 评论 -
关于tarjan算法的一些理解(割点割边)
首先介绍以下tarjan算法:---------------------------------------------tarjan算法-----------------------------------------------------------tarjan算法思想:tarjan算法在离线求LCA,强连通分量,割边,割点,点双连通分量,边双连通分量很有用tarjan算法中主原创 2015-07-20 06:44:57 · 3519 阅读 · 1 评论 -
关于欧拉函数的递推方法的证明
首先什么是欧拉函数呢?欧拉函数phi(n)就表示1-n中与n互质的数的个数设Xi为1-n中与n互质的数(一共有phi(n)个)那么我们可以知道phi(2) = 1 , phi(3) = 2.......,我们也可以通过如下的递推式获得更大的欧拉函数的值对于任意一个能被n整除的质数,有m = n/p当m%p == 0 的时候,phi(n) = phi(m)*p当m%p !=原创 2015-07-24 18:41:05 · 4094 阅读 · 0 评论 -
关于欧拉定理和费马小定理的证明
在看这篇博客之前推荐看一看我对于欧拉函数的递推公式的证明,方便理解。点击打开链接-------------------------------------欧拉定理的内容--------------------------------------------------------------------------a和n互质,那么a^phi(n) == 1 ( mod n )-原创 2015-07-24 19:08:37 · 4757 阅读 · 1 评论 -
关于欧几里得算法和拓展欧几里德定理的证明(不定方程求解方法)
---------------------------------欧几里得算法和拓展欧几里得定理-------------------------------------------------------欧几里得算法就是gcd ( a ,b ) == gcd ( b , a%b )拓展欧几里得定理就是对于ax+by = gcd ( a , b )中a,b为正整数, 那么至少存在一组整原创 2015-07-24 20:06:41 · 2246 阅读 · 0 评论 -
关于中国剩余定理的一种证明
------------------------------中国剩余定理的内容--------------------------------------------------------------------------------------------------------------------------------中国剩余定理的证明------------------原创 2015-07-24 19:32:18 · 4060 阅读 · 0 评论