上一页 1 ··· 6 7 8 9 10 11 下一页
摘要: 博客图片来源 1 红黑树是一种二叉查找树。 2 红黑树的性质。 (1)每个节点是红色或者黑色 (2)根节点是黑色 (3)叶节点是黑色(叶节点就是空节点,实际不存储东西) (4)每一个红色节点的两个孩子都是黑色节点 (5)对于每个节点,从该节点到任意后代叶子节点经过的黑色节点数相同。 (6)满足二叉查 阅读全文
posted @ 2016-10-29 15:15 朝拜明天19891101 阅读(399) 评论(0) 推荐(0) 编辑
摘要: 上一篇 1 基本的Ford-Fulkerson方法。该方法的思想就是每次找到一个增广路$p$,然后将增广路 $p$对应的流加到之前的流上得到新的流,一直这样直到找不到增广路,这时候找到的流就是最大流。 算法的伪代码如下 假设容量是整数,最大流为$f^{*}$,那么while循环最多执行$|f^{*} 阅读全文
posted @ 2016-10-29 11:56 朝拜明天19891101 阅读(688) 评论(0) 推荐(0) 编辑
摘要: B树是一棵多叉树。性质1:B树的每个节点有若干关键字,比如某一节点的关键字为[4,10,20],则该节点有四个孩子,设为Son[0],Son[1],Son[2],Son[3],满足Son[0]子树的最大值小于等于4,Son[1]子树的最小值大于等于4,Son[1]子树的最大值小于等于10,以此类推。 阅读全文
posted @ 2016-10-28 20:57 朝拜明天19891101 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 1 流网络。流网络G=(V,E)是一个有向图,每条边$(u,v)\in E$有一个非负容量值$c(u,v)\geq 0$.如果$(u,v)\notin E,c(u,v)=0$.另外有一个源节点s和汇点t。 2 流。G中的流是一个实值函数$f:V\times V\rightarrow R$,满足: ( 阅读全文
posted @ 2016-10-28 19:12 朝拜明天19891101 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 1 问题描述多项式的系数表示法:设关于x的n-1次多项式,次数为i的系数为ai。 \[A\left( x \right) = \sum\limits_{j = 0}^{n - 1} {{a_j}{x^j}} \] 多项式的点值表示法:用n个点可以确定一条曲线, \[\left( {{x_0},{y_ 阅读全文
posted @ 2016-10-25 20:02 朝拜明天19891101 阅读(269) 评论(0) 推荐(0) 编辑
摘要: prufer是无根树的一种编码方式,一棵无根树和一个prufer编码唯一对应,也就是一棵树有唯一的prufer编码,而一个prufer编码对应一棵唯一的树。 第一部分:树编码成prufer序列。 树编码成prufer序列的方式是:prufer序列初始为空。每次从树上选出一个编号最小的叶子节点,然后将 阅读全文
posted @ 2016-10-23 14:02 朝拜明天19891101 阅读(3030) 评论(2) 推荐(2) 编辑
摘要: 本文证明如下:最小路径覆盖=|G|-二分图的最大匹配。 参考链接:http://baike.baidu.com/view/2444809.htm (1)定义: 对于有向无环图$G$, 路径覆盖就是在图G中找出一些路径,每条路径从起点走到终点并且标记中间经过的点。最后,每个点只被标记一次。选出的这些路 阅读全文
posted @ 2016-10-23 13:48 朝拜明天19891101 阅读(1858) 评论(0) 推荐(1) 编辑
摘要: (1) 性质: AVL,平衡二叉查找树。删除,插入,查找的复杂度都是O(logn)。它是一棵二叉树。对于每个节点来说,它的左孩子的键值都小于它,右孩子的键值都大于它。对于任意一个节点,它的左右孩子的高度差不大于1。树的高度的定义为:空节点的高度为0,非空节点的高度为左右孩子高度的最大值加1。 (2) 阅读全文
posted @ 2016-10-22 15:50 朝拜明天19891101 阅读(613) 评论(0) 推荐(0) 编辑
摘要: 问题: 给定素数$p$,计算$1,2,...,p-2,p-1$模$p$的乘法逆元. 方法: 首先1对$p$的逆元是1. 下面计算$2,...,p-2,p-1$对$p$的逆元. 对于数字$i$,假设$p=k*i+r,1<i<p,0<r<i$ 那么有$k*i+r\equiv 0(mod\ p)$ 两边同 阅读全文
posted @ 2014-09-30 23:05 朝拜明天19891101 阅读(399) 评论(0) 推荐(0) 编辑
摘要: problem1 link 如果两个循环之内可以跳完,那么我们只要让这些步数之内的数字组成两个数字$p,q,p\leq q$,使得$p,q,x$组成三角形即可($p+q\geq x,p+x\geq q$)。 否则,若$x$是所有数字之和的很多倍,则一开始是一直直着向前跳$m$次,剩下$r=x-m\s 阅读全文
posted @ 2014-09-18 16:45 朝拜明天19891101 阅读(424) 评论(0) 推荐(0) 编辑
摘要: problem1 link 分别计算可以得到(a,b)的有哪些二元组,以及可以得到(c,d)的有哪些二元组。然后在公共的二元组中找到和最大的即可。 problem2 link 设最后的排序为$r=[2,4,1,0,5,3]$.初始时$2=4=1=0=5=3$。从后向前考虑每一个使用的技能。最后一个使 阅读全文
posted @ 2014-05-11 13:49 朝拜明天19891101 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 1 Miller-Rabin算法基于的两个定理: (1)费尔马小定理:如果$p$是一个素数,且$0<a<p \rightarrow a^{p-1}\equiv 1(mod\ p)$. (2)二次探测定理:如果$p$是一个素数,且$0<x<p$,则$x^{2}\equiv 1(mod\ p)\righ 阅读全文
posted @ 2013-11-28 00:11 朝拜明天19891101 阅读(591) 评论(0) 推荐(0) 编辑
摘要: (1) Lucas定理:p为素数,则有: $C_{n}^{m}\equiv \prod_{i=0}^{k}C_{a_{i}}^{b_{i}}(mod\ p)$ 其中$n=a_{k}p^{k}+a_{k-1}p^{k-1}+...+a_{0}$, $m=b_{k}p^{k}+b_{k-1}p^{k-1 阅读全文
posted @ 2013-11-27 23:54 朝拜明天19891101 阅读(5188) 评论(7) 推荐(2) 编辑
摘要: 1 算法定义: 给定两个数$a,b$,设$Gcd(a,b)=d$,则存在整数$x,y$,使得$x*a+y*b=d$。扩展欧几里得算法可以计算出$x,y$ 2 算法实现: $Gcd(a,b)=Gcd(b,a\ mod \ b)$.因此,假设$bx+(a\ mod \ b)y=d$,即$bx+(a-\l 阅读全文
posted @ 2013-11-27 23:37 朝拜明天19891101 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 素数筛法. 从每一个素数开始, 把它的倍数设置为非素数.这样从小到达枚举的时候, 不是非素数的就是素数. #include <cmath> #include <vector> template <typename TYPE, typename = std::enable_if_t<std::is_i 阅读全文
posted @ 2013-11-27 23:34 朝拜明天19891101 阅读(317) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 下一页