摘要: 在网上找了一些对tarjan算法解释较好的文章 并加入了自己的理解LCA(Least Common Ancestor),顾名思义,是指在一棵树中,距离两个点最近的两者的公共节点。也就是说,在两个点通往根的道路上,肯定会有公共的节点,我们就是要求找到公共的节点中,深度尽量深的点。还可以表示成另一种说法... 阅读全文
posted @ 2015-11-20 13:44 jszyxw 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 对于一组只关心相对大小而与实际值无关的数据,适用于离散化。将每个数据x的值修改为x在数组a[]中从小到大排序的名次。这样离散化,缩小了数据之间的间隔,但又不改变其相对于其他数据的大小关系。可以减少数据的时空复杂度。for(i=1;i<=n;i++){scanf("%d",&a[i]);b[i]=a[... 阅读全文
posted @ 2015-10-08 12:55 jszyxw 阅读(363) 评论(0) 推荐(0) 编辑
摘要: 单调栈为栈结构,棧内元素满足单调性 1.可O(N)求出数组中每个元素向两边所能扩展到的最大长度,满足扩展到的每个元素均大于(或小于)此元素。 以严格递减为例。 数组L[i]、R[i]记录i点最多能扩展到的左端点与右端点; 在元素x入栈时,将栈顶小于x的元素弹出,并令R[top]=x的位置 令L(x的 阅读全文
posted @ 2015-10-07 21:47 jszyxw 阅读(512) 评论(0) 推荐(0) 编辑
摘要: #includeint main(){printf("Hello World!");return 0;}//For test 阅读全文
posted @ 2015-10-07 21:27 jszyxw 阅读(107) 评论(0) 推荐(0) 编辑