广度优先搜索(BFS) 1、将头结点放入队列Q中 2、while Q!=空 u出队 遍历u的邻接表中的每个节点v 将v插入队列中 当使用无向图的邻接表时,复杂度为O(V^2) 当使用有向图的邻接表时,因为每条边只访问一次,不会重复访问,所以总复杂度为O(V+E) 深度优先搜索(DFS) for ea ...
分类:
其他好文 时间:
2016-12-10 18:24:12
阅读次数:
193
定义:图G(V,E)是连通图,顶点集S是V的子集,若删除S中的所有顶点,将是图不连通,称S是图G的割集。若S={v},则称v为图G的割点(或结合点)。 如果一个无向图没有结合点,该图称为双连通图 结合点的性质: 性质1: 当且仅当深度优先搜索树的根结点至少有两个以上儿子,则根结点是结合点。 性质2: ...
分类:
其他好文 时间:
2016-12-07 20:38:22
阅读次数:
315
http://poj.org/problem?id=1979 Description There is a rectangular room, covered with square tiles. Each tile is colored either red or black. A man is ...
分类:
其他好文 时间:
2016-12-07 20:03:53
阅读次数:
304
2016 11月最后一周 这一周复习了一下目前大概了解的唯一算法——深度优先搜索算法(DFS)。关于各种细节的处理还是极为不熟练,根据题意判断是否还原标记也无法轻松得出结论。不得不说,距离一个准ACMer我都有相当差距,这条路是否能行通也无从得知。明天就是新生赛了,GG的时候即将到来。。。但无论成功 ...
分类:
其他好文 时间:
2016-12-03 02:20:54
阅读次数:
211
简介 有向图G(V,E),圈是一个起始节点与终止节点相同的路径,即 a->….->a。找到所有的圈可能要遍历所有的路径,这就涉及到算法性能的考虑。本文基于深度优先搜索,讨论查找所有圈的算法加速策略。 无向图的查圈算法 深度优先搜索算法是从已知节点出发,图的一种遍历算法。只要一个节点被同源两个路径访问 ...
分类:
编程语言 时间:
2016-12-01 13:49:20
阅读次数:
384
该题还不错~。 题意:给定N、K、P,使得可以分解成N = n1^P + … nk^P的形式,如果可以,输出sum(ni)最大的划分,如果sum一样,输出序列较大的那个。否则输出Impossible。 dfs枚举,为了防止超时,这里要预先将从1开始的i^p的值存储在factor数组中,直到i^p>n ...
分类:
其他好文 时间:
2016-11-30 19:45:23
阅读次数:
172
一、算法介绍 深度优先搜索是一种图的遍历算法,思想是从一个顶点开始,沿着一条路一直走到底,如果发现不能到达目标解,那就返回到上一个节点,然后从另一条路开始走到底,这种尽量往深处走的概念即是深度优先的概念。 二、应用 1.迷宫问题 问题描述:迷宫中的入口到迷宫中某一目标点的最短步数,移动方向只能是相邻 ...
分类:
其他好文 时间:
2016-11-25 23:52:07
阅读次数:
313
【算法入门】 郭志伟@SYSU:raphealguo(at)qq.com 2012/05/12 1.前言 深度优先搜索(缩写DFS)有点类似广度优先搜索,也是对一个连通图进行遍历的算法。它的思想是从一个顶点V0开始,沿着一条路一直走到底,如果发现不能到达目标解,那就返回到上一个节点,然后从另一条路开 ...
分类:
其他好文 时间:
2016-11-15 22:54:14
阅读次数:
291
深度优先搜索(DFS,Depth-First Search)是搜索手段之一。它从某个状态开始,不断的转移状态知道无法转移,然后退回到前一步的状态,继续转移到其他状态,如此不断重复,直到找到最终的解。 问题给定整数a1,a2...an,判断是否可以从中选出若干数,使它们的和恰好为k。 1<=n<=20 ...
分类:
其他好文 时间:
2016-11-09 21:55:37
阅读次数:
176