
学习笔记
文章平均质量分 82
巴黎没有欧莱雅你也不值得被拥有
发现自己近来好懒,好久没沉淀芝士了
展开
-
割点_去掉割点后的连通分支数(点连通图)
tarjan算法找到割点后,计算出去掉这个点后的图的连通分支数主要是解释在去掉点后的连通分支数的初始值疑问参考题:poj1523点击打开链接原创 2017-04-28 10:43:41 · 2021 阅读 · 0 评论 -
蓝桥杯常用算法
或void *memset(void *s, int ch, size_t n); #include sort(a,a+n)排序函数,从小到大,a为数组名字,n为元素个数sort(vector.begin(),vector.end())排序vector只要数据类型定义了小于操作符,即可用sortsort(a,a+n,compare)即可按照自转载 2017-04-07 15:40:16 · 1459 阅读 · 0 评论 -
用二分算法解决问题
首先有明确的一段取值区间[min,max];其中二分算法中还潜在排序,是从大到小找的结果,所以在题中让求解什么最大的最小值(例如青蛙过河题,分蛋糕,分巧克力)。题中大多是分某件东西。在其他问题中,可以用二分算法去找区间里的某个值,例如在[1,10]这个有序序列中找是否存在8;(暂时能总结的只有这些了,随后继续。)原创 2017-04-10 16:03:19 · 492 阅读 · 0 评论 -
关于建图
之前一直狭隘的以为建图就是把题目中给的数据(例如矩阵,边权值等)或者是字符串的形式转换成边关系,今天才发现这才是最低级的(然而我连这转化也做的不怎么样,至少不是每次很轻松的完成)。 我现在所理解的建图不仅仅是将题目中给的数据进行简单的替换了,而是为了解决问题,根据问题类型将其转换成某种图类型,比如是有向图,无向图,二分图(因为我现在依然只学到了这点,等以后做了别的题再补充)。。。,利用不同图原创 2017-04-20 10:43:13 · 488 阅读 · 0 评论 -
最大匹配_完美匹配——概念
交替路:从一个未匹配点出发,依次经过非匹配边、匹配边、非匹配边...形成的路径叫交替路。增广路:从一个未匹配点出发,走交替路,如果途径另一个未匹配点(出发的点不算),则这条交替路称为增广路(agumenting path)。原创 2017-04-20 15:17:37 · 37036 阅读 · 1 评论 -
强连通图_割点_割边(桥)_双向连通分量关系
双连通分量:分为点双连通和边双连通。它的标准定义为:点连通度大于1的图称为点双连通图,边连通度大于1的图称为边双连通图。通俗地讲,满足任意两点之间,能通过两条或两条以上没有任何重复边的路到达的图称为双连通图。无向图G的极大双连通子图称为双连通分量。Tarjan算法的应用论述:1.求强连通分量、割点、桥、缩点:对于Tarjan算法中,我们得到了dfn和low两个数组,原创 2017-04-23 21:19:47 · 790 阅读 · 0 评论 -
路径判环_最长最短路径判环_负权环判环
路径判环,可以用强连通判断,如果缩点后连通分支数为1且该连通分支的节点个数==图中节点n,则路径为强连通图最长最短路径判环_可以用SPFA算法:当某一点的进队次数>该点的入度个数,则路成环负权环_可以用SPFA算法:当某一点的进队次数>n-1时,有负权环原创 2017-05-05 11:08:59 · 916 阅读 · 0 评论 -
n阶完全树
任意两个vertex之间都有edge连接。但是不包含到自身的连接。无向图的n阶完全图有n(n-1)/2条边有向图的n阶完全图有n(n-1)条边成树是原图的极小连通子图,包含原图所有n个节点,并且保持图连通的同时,边最少。一个有n个顶点的完全图其生成树有n-1条边。ayley公式是说,一个完全图K_n有n^(n-2)棵生成树,换句话说n个节点的带标号的无根树有n^(n-2)个。原创 2017-05-04 20:37:17 · 3825 阅读 · 0 评论 -
欧拉图和半欧拉图
具有回路的欧拉路径称为欧拉图,不具有回路的欧拉路径称为半欧拉图若图G中存在这样一条路径,使得它恰通过G中每条边一次,则称该路径为欧拉路径。若该路径是一个圈,则称为欧拉(Euler)回路。 具有欧拉回路的图称为欧拉图(简称E图)。具有欧拉路径但不具有欧拉回路的图称为半欧拉图。先说一下欧拉路径、欧拉回路的充要条件: 1.无向连通图G是欧拉图,当且仅当G不含奇数度结点(G的所有结原创 2017-05-04 10:36:58 · 7399 阅读 · 0 评论 -
中缀表达式转换为后缀表达式
一、后缀表达式求值后缀表达式也叫逆波兰表达式,其求值过程可以用到栈来辅助存储。假定待求值的后缀表达式为:6 5 2 3 + 8 * + 3 + *,则其求值过程如下:1)遍历表达式,遇到的数字首先放入栈中,此时栈如下所示:2)接着读到“+”,则弹出3和2,执行3+2,计算结果等于5,并将5压入到栈中。3)读到8,将其直接放入栈中。转载 2017-05-03 10:02:25 · 2435 阅读 · 1 评论 -
强连通分量_双连通分量(转载)
基本概念:1.割点:若删掉某点后,原连通图分裂为多个子图,则称该点为割点。2.割点集合:在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合。3.点连通度:最小割点集合中的顶点数。4.割边(桥):删掉它之后,图必然会分裂为两个或两个以上的子图。5.割边集合:如果有一个边集合,删原创 2017-04-27 13:02:01 · 771 阅读 · 0 评论 -
不要将自增自减放在while循环里
可能大家对下面我描述的并不了解也看不下去,所以我们不需要看!!!我只想提前告知你一件事情,就是在whlie(x++ < 10)这种写法的结果可能跟你想象的不一样。我下面描述比较有逻辑问题,因为我不想扒源码了再从头到尾的描述了啦哈哈哈,自己做个记录了解下就行啦~也觉得没有分享的必要,可能大家都知道哈哈哈哈。之前做的一个项目,还好在测试阶段就发现了一个潜在的问题~就是处理业务的时...原创 2019-04-03 15:20:36 · 1503 阅读 · 0 评论