摘要:
最长公共子序列,动规经典题 f[i][j] = max {f[i-1][j], f[i][j-1], f[i-1][j-1]+(s1[i] == s2[j])} #include #include using namespace std;const int maxn = 1010;int f[maxn][maxn];inline int max(int x, int y, int z) { if (x > y) return x > z ? x : z; else return y > z ? y : z; }int main(){ string s1, s2; int .. 阅读全文
阅读排行榜
《javascript DOM 编程艺术》学习笔记(一)
2014-05-20 01:48 by 凝月流风, 283 阅读, 收藏,
摘要:
书籍已经看完了前六章的内容,有了一定的编程基础后觉得本书内容相对来说过于简单,应该是完全针对于初学者的(或者如作者所说是写个Web设计师的),作者在表述一个问题,一句代码都解释得非常啰嗦与重复,不过从书中学习到更多的,也是作者想让读者体会的是让大家理解DOM脚本编程技术背后的思路和原则,作者特别... 阅读全文
AVL树
2013-12-03 01:55 by 凝月流风, 281 阅读, 收藏,
摘要:
之前学习AVL树,便照着书上(《Data structure and program design in C++》)的插入代码敲了一遍加深印象(去掉书上的继承)。1.AVL树是一种平衡二叉树,通过保持每一个节点的两棵子树的高度差不能超过1来保持树的平衡性。2.平衡性的保持:当插入新节点时,就可能破坏树的平衡性,针对某一个平衡性被破坏的节点的平衡操作(假设子树已经平衡,递归操作)有4种情况: case1:插入后左子树更高且左子树的左子树比右子树高,此时进行右旋操作 case2:插入后左子树更高且左子树的右子树比左子树高,此时进行双旋转操作 ... 阅读全文
红黑树学习笔记
2013-12-25 02:48 by 凝月流风, 269 阅读, 收藏,
摘要:
从上学期就一直打算写出红黑树,但是由于能力太水,插入操作始终无法看明白,最近学习数据结构重新将红黑树的插入操作看了一遍,结合《算法导论》,《data structures and programing design in C++》 和侯捷的《STL源码》,终于弄清楚插入操作中保持树结构的几种情况,虽然这三本书在分类上有些许的差别,但本质的方法还是一样的。我还是根据算法导论将其分为3种情况(STL是分为4种情况):首先必须明白的情况是:每次插入节点的都设为红条件,如果需要保持红黑树结构时,则必然是新增节点的父亲节点也是红色,而且祖父节点必须是黑色(因为未插入前是一棵符合要求的红黑树) 1.... 阅读全文
POJ1149最大流
2013-07-30 22:12 by 凝月流风, 236 阅读, 收藏,
摘要:
难度在于建图,剩下的就是求最大流问题了。 贴上我的实现代码 //题目的难度在于如何建图,将每一个客户当做点,另外添加一个源点s和汇点t,每个客户点建一条有向边指向汇点t,容量为该客户要购买的猪的数量; //若客户i是猪圈j的第一个访问者,则从源点s建一条边指向节点i,容量为猪圈的初始猪数,若客户i不 阅读全文
浙公网安备 33010602011771号