摘要: 发现有人把无穷大设成0x3f3f3f3f,好像还真不是随便设的。 0x3f3f3f3f比10^9大一点,比一般数据范围大; 乘2之后比2147483467小,满足正无穷加正无穷还是正无穷; 每个字节都是0x3f,可以memset整个dis数组,免得写循环。 服气。 阅读全文
posted @ 2017-05-28 23:57 DearDongchen 阅读(757) 评论(0) 推荐(0) 编辑
摘要: 连通无向图有最小生成树,边权从小到大排序,每次尝试加入权最小的边,如果不成圈,就把这边加进去,所有边扫一遍就求出了最小生成树。 判断连通分支用Union-Set(并查集),就是把连通的点看成一个集合,只关心哪些点在一个集合里,而不关心相互的连接方式。x父节点用fa【x】保存;如果x没有父节点,fa【 阅读全文
posted @ 2017-05-27 20:48 DearDongchen 阅读(252) 评论(0) 推荐(0) 编辑
摘要: dijkstra是一种单源最短路算法。在没有负权值的图上,vi..vj..vk是vi到vk最短路的话,一定要走vi到vj的最短路。所以每次取出到起点距离最小的点,从该点出发更新邻接的点的距离,如果更新成功则把新点加入priority_queue。储存图使用的是邻接表。代码如下: dijkstra经典 阅读全文
posted @ 2017-05-26 19:42 DearDongchen 阅读(1327) 评论(0) 推荐(1) 编辑