广度优先搜索可以形成一个广度优先搜索树算法时间为O(V+E),两重循环输入:图g,起点start(int)需要的数据结构:队列Q、color数组(存放每个顶点的颜色)算法过程:1. 预处理:1)color数组的每个值都赋为white(表示没被访问过);2)队列Q为空队列2. 处理起点:1)color...
分类:
其他好文 时间:
2015-05-08 19:48:00
阅读次数:
133
Asteroids!
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 4038 Accepted Submission(s): 2605
Problem Description
You're in space...
分类:
其他好文 时间:
2015-05-08 13:07:49
阅读次数:
153
这一题,简单的广搜就可以搞定,只是在搜索的时候判断比较麻烦,遇到楼梯的时候,有多种情况,停下来等,或者走其他路,来到楼梯,楼梯是否可以直接上等等的判断。
一开始WR,就是在楼梯可以直接上的时候,没有判断走出楼梯的那一个是否可以走,所以WR了3次。
下面AC的代码:
#include
#include
using namespace std;
class Node
{
public:...
分类:
其他好文 时间:
2015-05-08 09:37:06
阅读次数:
103
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to right, then right to left for the next level and alternate between).
For example:
Given binary ...
分类:
其他好文 时间:
2015-05-06 17:50:43
阅读次数:
111
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level).
For example:
Given binary tree {3,9,20,#,#,15,7},
3
/ 9 20
...
分类:
其他好文 时间:
2015-05-05 22:00:45
阅读次数:
178
集成测试方式分为自顶向下和自底向上两种。自顶向下集成(Top-Down Integration):从主控模块开始,沿着程序控制层次向下移动,逐渐把各模块组合起来。可以使用深度优先或是广度优先的组合策略。自顶向下的集成步骤:1、对主控模块进行测试,用桩模块替代被主控模块调用的子模块2、根据选定的策略(...
分类:
其他好文 时间:
2015-05-03 17:13:26
阅读次数:
170
当你和家人一起去海南旅游,可是你的城市并没有直接到达海南的飞机,但是你已经搜集了很多航班的信息,现在你希望找到一种乘坐方式,使得转机次数最少
如何解决呢?
假如你的城市在1号城市,海南在5号城市;现有如下关系:
如何求得1号城市到5号城市的最少转机次数呢?此时就用到了本次讲解的内容,广度优先搜索!
作图的问题首先我们应该用邻接矩阵或者二维数组来存取顶点之间的关系。
广度优...
分类:
其他好文 时间:
2015-05-02 15:12:54
阅读次数:
157
这两天在写一个java多线程的爬虫,以广度优先爬取网页,设置两个缓存:
一个保存已经访问过的URL:vistedUrls
一个保存没有访问过的URL:unVistedUrls
需要爬取的数据量不大,对URL压缩后,可以把这两个数据结构都放入内存,vistedUrls很显然用HashSet实现,因为已经访问的URL只会添加,不会删除和修改,使用HashSet可以高效...
分类:
编程语言 时间:
2015-04-28 18:35:37
阅读次数:
244
本文兼参考自《算法导论》及《算法》。 以前一直不能够理解深度优先搜索和广度优先搜索,总是很怕去碰它们,但经过阅读上边提到的两本书,豁然开朗,马上就能理解得更进一步。 1. 深度优先搜索 1.1 迷宫搜索 在《算法》这本书中,作者写了很好的一个故事。这个故事让我马上理解了深度优先搜索的思想。...
分类:
编程语言 时间:
2015-04-28 01:42:28
阅读次数:
340