给出n个单词,如果一个单词的尾和另一个单词的头字符相等,那么可以相连,问这n个单词是否可以排成一列。欧拉路应用,构图:一个单词的头尾字母分别作为顶点,每输入一个word,该word的头指向word的尾画一个有向边,并且记录每个顶点的出入度。利用dfs先判断是否为一个连通图,如果是的话则判断是否有且仅...
分类:
其他好文 时间:
2014-07-28 15:26:53
阅读次数:
171
一个连通图的生成树是一个极小的连通子图,它包含图中全部的顶点(n个顶点),但只有n-1条边。最小生成树:构造连通网的最小代价(最小权值)生成树。prim算法在严蔚敏树上有解释,但是都是数学语言,很深奥。最小生成树MST性质:假设N=(V,{E})是一个连通网,U是顶点集V的一个非空子集。若(u,v)...
分类:
其他好文 时间:
2014-07-28 15:03:23
阅读次数:
296
【题意】;给出一群牛中,一头牛认为另一头牛受欢迎的m对关系,关系式可以传递的,即若a认为b受欢迎,b认为c受欢迎,那么a也认为c受欢迎。求最多有多少头牛被所有的牛认为受欢迎。【思路】:把这些关系形成的强连通图缩成点,就形成了一有向无环图,这个图里的出度为0的点(有且只有一个)就是被所有牛认为受欢迎的...
分类:
其他好文 时间:
2014-07-27 21:28:45
阅读次数:
250
题意: 给你一个双向连通图,求 获得权值最大 的 哈密顿通路的 权值 和 这个权值对应的数目; 其中权值计算方法是 列如 ABCD 权值是a+b+c+d+ab+bc+cd 如果 A,B,C 和B,C,D 可构成三角形分别加上abc,bcd;这个题 和poj 3311 很相像: 那个需要记录一个最后....
分类:
其他好文 时间:
2014-07-21 09:32:05
阅读次数:
263
题意:将一个无向图中的双向边改成单向边使图强连通,问最多能改多少条边,输出改造后的图。分析:1.双连通做法:双连通图转强连通图的算法:对双连通图进行dfs,在搜索的过程中就能按照搜索的方向给所有边定向,其中桥不能改造,只能保留双向边。代码:#include #include #include #in...
分类:
其他好文 时间:
2014-07-20 21:29:01
阅读次数:
234
对于连通图无向图:1.无奇点,可以从任意一点出发回到原点。 2.存在奇点,且只有两个,从一奇点出发,另一奇点终止。有向图:1.所有点入度等于出度。 2.只有两个点入度不等于出度,且其中一个点入度比出度大一另一个点的出度比入度大一。#include #include #include #include...
分类:
其他好文 时间:
2014-07-17 14:32:49
阅读次数:
164
给一个图,问至少加入?多少条有向边能够使图变成强连通的。原图是有环的,缩点建图,在该DAG图上我们能够发现,要使该图变成强连通图必须连成环而加入?最少的边连成环,就是把图上入度为0和出度为0的点连上,那么其它的点就都能够互相到达了所以答案就是max(入度为0的点,出度为0的点)#include #i...
分类:
其他好文 时间:
2014-07-14 20:54:10
阅读次数:
204
Prim算法1.概览普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点(英语:Vertex (graph theory)),且其所有边的权值之和亦为最小。该算法于1930年由捷克数学家沃伊捷赫·亚尔尼克(...
分类:
其他好文 时间:
2014-07-12 00:26:56
阅读次数:
298
克鲁斯卡尔算法:
假设连通网N = {V,{E}},则令最小生成树的初始状态为只有n个顶点而无边的非连通图T = {V,{}},图中每个顶点自成一个连通分量。在E中选择一个最小代价边,若该边依附的顶点落在T中的不同连通分量上,则将此边加入到T中,否则舍去此边而选择下一条最小代价边【最小生成树不存在环】。依次类推,直至T中所有顶点都在同一连通分量上为止。【连通分量:无向图的极大连通子图】
...
分类:
其他好文 时间:
2014-07-10 21:06:36
阅读次数:
207
2014.07.04 22:42简介: 给定一个无向带权连通图(三个条件),选出n-1条边将这n个顶点连成一棵树,使得这棵树的权值之和最小。描述: 本次使用Prim算法来解决这个问题。Prim算法的思想是两点:BFS与贪婪。 我们从一个顶点出发,把这个顶点对应的边加入到优先队列中。既然是优先队...
分类:
编程语言 时间:
2014-07-06 16:49:33
阅读次数:
272