- 博客(8)
- 收藏
- 关注
原创 字典树 归纳总结
字典树总结字典树:也是一种树,是一种哈希树的变种,主要用于统计,排序,和保存大量的字符串。字典树主要的存储方式是孩纸兄弟法。 差不多: 一个父亲,左边是孩纸,右边是兄弟,在右边也是兄弟。添加: 先统计字符串的长度,从root开始寻找,如果到达叶子节点了,就添加一个新的节点。方法类似邻接链表:邻接链表:void addarc(int a,int b){ e[sum].
2016-07-31 20:52:41 348
原创 哈希表 (自我总结
哈希表, 就是一种结构数据,它以牺牲空间为代价节约时间,其实,我在做题的过程中,并没有什么明显的感觉,做得有些一头雾水。 哈希表的运用感觉还是挺简单的,不过运动道题目,以什么值为下标,储存其值,如何去查找思考,如果单方面的看哈希表是简单的,就是在于如何放在题目中运用。int hash{ return a mod m; } //计算哈希表table[hash(所要添加的值)]=sum;元素查
2016-07-26 20:53:47 488 1
原创 网络流总结
今天学的网络流,总的感觉来说稍难,不管是理解还是什么,但是理解了后,就变得简单许多。Ford-fulkerson算法 是来求最大流量问题,从源点出发,到汇点,到底能多少能流入汇点。算法: 1、从源点出发,找相邻边,如果相邻边未被找过并且还可以流入流量就DFS。 2、更新流入的边。 3、重复操作,直到没有新的到达汇点的边可以流入为止。代码:
2016-07-20 20:32:31 288 1
原创 无向图 tarjan 总结
说到这个无向图,就没强连通或者极大连通了,因为边都是互相相连的,但是你也可以拆成两条有向边来做,但是删去,或者处理这条边的时候,要记住同时把这两条边有向边给除去掉。割点:没了这个点,这个无向图就断掉了,即:不能从一个点,到达其中任意一个点。 点连通度:即割点的数量。割边类似。在做POJ1523 这道题的时候,发现自己有许多的问题,比如那道题的读入很是老火,一直都无法正确读入,就
2016-07-19 21:38:20 1707 1
原创 Tarjan 算法自我总结
首先要说一下,强连通分量是指有向图里顶点间能互相到达的子图,并不一定要各点之间连在一起。 极大强连通图 是一个没有被其他连通图完全包含的图。所以说Tarjan算法是来求强连通图的。tarjan算法 代码如下:void tar(int a){ int i,b; dfn[a]=low[a]=++t; put(a); for(i=v[a].fir;i!=0;i=arcnum[
2016-07-18 19:17:45 288 1
原创 拓扑序列
拓扑序列 首先要说下AOV网,是一个有向但是没有环的图。 而这种图,可以用一种相对有序的数列表示出来。顶点表示活动,边表示其关系。今天要说的就是这种图可以用拓扑序列表示出来。 如果这个网里面有环的话(包括自环),是不能用拓扑序列表示出来的,因此拓扑序列也能拿来判断一个图是否有回环。 具体:拓扑序列完后,输出拓扑序列里的点,会发现比图中的点少,说明有环。 拓扑序列实现: for(i
2016-07-17 20:22:12 4106
原创 2016.7.15感想
2016.7.15关于最小生成树,在极小连通中删除一个边就不再连通了,添加一条边,有必定成环的一种树。它来可来求,每个地方都连通起来的最小权值。 我们来求这种最小生成树现在已会两种求法: prim算法: 原理:设G=(V,E)是一个有向连通图U是顶点集V的一个子集如果:1、边(u,v), u∈U且v∈(V-U),一个顶点在U中、另一个端点不在U中2、(u,v)是满足条
2016-07-15 18:09:53 370 1
原创 考试总结
The First Blood关于我的这一次考试,简直糟糕透了。 今天的考试不难,但自己却做不来。这是由于自己下的苦果。 例如这个题目:x1+x2+x3+x4....+xn=m.当时知道这是一个动归的问题,但该怎么动,状态转移方程是什么??但就是不能联系到那些经典题。就像完全做一道陌生题一样。结果越做越偏。。以至于 game over。再说说第二题的,神奇的魔法石,这道题,找最小
2016-07-14 19:25:51 221 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人