Dijkstra算法是解单源最短路径问题的贪心算法。其基本思想是,设置顶点集合点集合S并不断地做贪心选择来扩充这个集合。一个顶点属于集合S当且仅当从源到该顶点的最短路径长度已知。初始时,S中仅含有源。设u是G的其一顶点。把从源到u且中间只经过S中顶点的路称为从源到u的特殊路径,并用数组Distance记录当前每个顶点所对应的最短特殊路径长度。Dijkstra算法每次从V-S中取出具有最短特殊路长度...
分类:
其他好文 时间:
2014-08-09 13:31:37
阅读次数:
271
题目地址:HDU 3468
这道题的关键在于能想到用网络流。然后还要想到用bfs来标记最短路中的点。
首先标记方法是,对每一个集合点跑一次bfs,记录所有点到该点的最短距离。然后对于任意一对起始点来说,只要这个点到起点的最短距离+该点到终点的最短距离==起点到终点的最短距离,就说明这点在某条从起点到终点的最短路上。
然后以集合点建X集,宝物点建Y集构造二分图,将从某集合点出发的最短路中经过宝...
分类:
其他好文 时间:
2014-07-26 15:15:10
阅读次数:
296
VS2013在某一天突然无法进行实时代码校验了,只有在编译的时候,错误列表才显示语法错误 怎么来解决这个问题呢?试试环境重置吧。 首先:打开工具菜单,选择“导入和导出设置”。 其次:可以先导出选定的环境设置,已做备份。然后选中“重置所有设置”。将所有环境设置重置为某一默认设置集合。点击下一步,需要....
分类:
其他好文 时间:
2014-07-06 22:00:11
阅读次数:
308
本题是一般最近对点求解,稍微增加点限定:有两个集合点,要求不同集合中的点的最近对。
那么就增加一个判断,如果是同一个集合中的点,那么就返回最大值,其他和一般的最近对点解法一样。
注意:本题数据有重合点,那么就要防止分类的时候溢出。
Geeks上的最近对的程序是无法处理有重合点的情况的。
#include
#include
#include
#include
#includ...
分类:
其他好文 时间:
2014-07-02 15:27:59
阅读次数:
402
多线程数据同步错误比较难检测,因为通常是与事件的特定发生顺序有关。
一、同步术语
Barrier(屏障)
barrier是多个Thread的集合点:所有的Thread都应该到齐在这个barrier之后才能允许它们继续下去。
Condition variable(条件变量)
实际上不是变量,而是与某个lock有关联的变量。
Event variable(事件变...
分类:
编程语言 时间:
2014-06-18 06:23:12
阅读次数:
356
一、基本概念:1.割点:若删掉某点后,原连通图分裂为多个子图,则称该点为割点。2.割点集合:在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合。3.点连通度:最小割点集合中的顶点数。4.割边(桥):删掉它之后,图...
分类:
其他好文 时间:
2014-06-09 15:43:52
阅读次数:
344
loadrunner学习笔记-02集合点
集合点函数可以帮助我们生成有效可控的并发操作。虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行随着时间的推移,并不能完全达到同步。这个时候需要手工的方式让用户在同一时间点上进行操作来测试系...
分类:
其他好文 时间:
2014-05-17 00:49:34
阅读次数:
286
一个小队去登山,每位队员登山的速度不同。山上有几个集合点,在每一集合点处,先到达的队员只有等后面的队员全部到达集合点后才能继续向下一个集合点出发。JDK1.5提供的CyclicBarrier模拟了这种情况。每一个线程相当于一个登山队员,CyclicBarrier相当于山上的集合点。只有等所有线程都执...
分类:
编程语言 时间:
2014-05-01 11:34:29
阅读次数:
388