【POJ 2531】Network Saboteur图的搜索 剪枝真是门学问。。剪好了快的可真不是一倍两倍刚开始搜的思路有问题 TLE了 后来枚举点暴力搜了一发 两百多ms由于查找时权值是不断增加的 所以直接找集合间最大权的话不方便设置return点看disscuss发现有一大牛 建了两个数组 通过所有边权-两集合内部边权(去重) 得到答案 dfs的时候找最小内部边权即可 当前状态权值>当前最小内部...
分类:
Web程序 时间:
2015-08-10 12:02:35
阅读次数:
114
图有两种标准的表示方法,即邻接矩阵和邻接表(通常邻接矩阵用于稠密图,邻接表用于稀疏图)。如下:
对于图的搜索有两种方法:深度优先搜索 & 广度优先搜索。
广度优先搜索(Breadth-first search)
广度优先搜索是将已发现和未发现顶点之间的边界沿其广度方向向外扩展。亦即算法首先会发现和s距离为k的所有点,然后才会发现和s距离为k+1的其他顶点。
伪代码:
...
分类:
编程语言 时间:
2015-07-20 09:18:55
阅读次数:
184
欢迎使用Markdown编辑器写博客问题描述Given a 2d grid map of ‘1’s (land) and ‘0’s (water), count the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or verti...
分类:
其他好文 时间:
2015-07-15 13:18:42
阅读次数:
105
C++之广度优先搜索算法篇C++之广度优先搜索算法篇 广度优先搜索(又称宽度优先搜索算法)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。 Dijkstra单源最短路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。其别名又叫BFS,属于一种盲目搜寻法,目的是系统.....
分类:
编程语言 时间:
2015-07-12 10:53:45
阅读次数:
180
图的邻接表表示
对图(有向或无向)G=(为方便记,假定V=1,2,…,n)G=(为方便记,假定V={1, 2, …, n}),其邻接表表示是一个由|V|个链表组成数组,对每个u∈Vu ∈ V,链表Adj[u]称为对应顶点u的邻接表。它包含G中所有与u相邻的顶点。每个邻接表中顶点通常是按任意顺序存放的。
无向图的邻接表表示
有向图的邻接表表示广度...
分类:
编程语言 时间:
2015-07-10 19:13:44
阅读次数:
218
1.题目描述:点击打开链接
2.解题思路:本题是迷宫问题,典型的BFS解法。不过首先应当确定状态是什么。根据题意描述:筛子的坐标+筛子的前面和顶面即构成了一个状态。这样以来,其实本题有点类似于隐式图的搜索。那么状态是怎么逐步扩展的呢?由于筛子每次都有四个方向可以滚动,因此通过判断滚动后的新状态是否合法即可扩展开来。不过向左,向右滚动需要提前打表,列出24种顶面是u,正面是f的右侧面值。详细部分见...
分类:
其他好文 时间:
2015-04-05 09:06:00
阅读次数:
134
广度优先搜索(Breadth-First-Search)和深度优先搜索(Deep-First-Search)是搜索策略中最经常用到的两种方法,特别常用于图的搜索.
BFS的思想:
从一个图的某一个顶点V0出发,首先访问和V0相邻的且未被访问过的顶点V1、V2、……Vn,然后依次访问与V1、V2……Vn相邻且未被访问的顶点。如此继续,找到所要找的顶点或者遍历完整个图。我们采用...
分类:
其他好文 时间:
2015-04-01 15:27:10
阅读次数:
211
宽度优先搜索算法(又称广度优先搜索)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。Dijkstra单源最短路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。poj3278思路:根节点n, n+1,n-1,2*n三个子节点不断地延伸,目标节点k,寻找这样一天最短的路...
分类:
其他好文 时间:
2015-03-28 18:38:46
阅读次数:
169
二分图,又叫做双分图 二部图 偶图,指顶点可以分成两个不相交的集U和V,使得在同一个集内的顶点不相邻(没有共同边)的图。无向图G为二分图的充要条件是,G至少有两个顶点,且其所有回路的长度均为偶数。给定一个具有N个顶点的图,判断其是不是二分图(如着色问题,最小着色数为2的图就是二分图),可以用DFS处理。选择任意一个顶点出发,依次确定相邻顶点的颜色,就可以判断是否可以被2种颜色染色了。代码如下#inc...
分类:
其他好文 时间:
2015-03-04 14:48:05
阅读次数:
144
A*算法是常用的游戏算法之一,也是初学者比较难掌握的一个算法。
本文在Unity中以GUI的方式形象的再现了A*算法的详细步骤,
包括地图的搜索、FGH的计算以及开启关闭列表的变化等。...
分类:
编程语言 时间:
2015-02-19 06:27:23
阅读次数:
817