码迷,mamicode.com
首页 >  
搜索关键字:图论    ( 2467个结果
BZOJ 1064 假面舞会(图论-连通分量)
题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=1064题意:一年一度的假面舞会又开始了,栋栋也 兴致勃勃的参加了今年的舞会。今年的面具都是主办方特别定制的。每个参加舞会的人都可以在入场时选择一 个自己喜欢的面具。每个面具都有一个编号,主办...
分类:其他好文   时间:2014-06-23 06:21:35    阅读次数:173
算法8-4:Kruskal算法
Kruskal算法用于计算一个图的最小生成树。这个算法的步骤如下: 按照边的权重从小到达进行排序 依次将每条边增加到最小生成树中,除非这条边会造成回路 实现思路 第一个步骤需要对边进行排序,排序方法在之前的章节中已经介绍了很多,可以使用优先级队列进行实现,也可以使用归并排序进行实现,这里采用归并排序。 第二个步骤需要判断是否会造...
分类:其他好文   时间:2014-06-22 21:43:31    阅读次数:204
算法8-3:权重图接口
在正式编写最小生成树的算法之前,还需要做一些准备工作。具体的工作就是建立一些基础对象。 边 首先需要建立边的对象。现在的边要增加权重信息,一条边需要记录两个端点以及这条边的权重,因此边类的轮廓如下: public class Edge implements Comparable { public Edge(int v, int w, double we...
分类:其他好文   时间:2014-06-22 20:45:50    阅读次数:147
算法学习笔记 最短路
图论中一个经典问题就是求最短路,最为基础和最为经典的算法莫过于 Dijkstra 和 Floyd 算法,一个是贪心算法,一个是动态规划,这也是算法中的两大经典代表。用一个简单图在纸上一步一步演算,也是很好理解的,理解透自己多默写几次即可记住,机试时主要的工作往往就是快速构造邻接矩阵了。 对于平时的练习,一个很厉害的 ACMer 说:“刷水题可以加快我们编程的速度,做经典则可以让我们触类旁通,初期如果遇见很多编不出,不妨就写伪代码,理思路,在纸上进行整体分析和一步步的演算,然后在转换成代码,再反复迭代”。L...
分类:其他好文   时间:2014-06-22 20:36:46    阅读次数:269
算法8-2:最小生成树贪婪算法
为了简化问题,我们需要作出一些假设。假设图中每条边的权重都是不一样的,假设整个图是连通的。这样假设的目的就是让最小生成树的计算结果是唯一的。 图的切割 介绍算法之前,需要先了解图的切割。图的切割就是将顶点分割成两部分,切到的边称之为交叉边。下图红色的先就是交叉边。 在最小生成树中,无论如何切割,最小生成树总是从交叉边中选择最小的...
分类:其他好文   时间:2014-06-21 23:51:30    阅读次数:316
算法8-5:Prim算法
Prim算法用于计算最小生成树。Prim算法分为两种,一种是懒汉式,一种是饿汉式。 懒汉式Prim 懒汉式Prim算法步骤如下: 首先将顶点0加入到MST中 从MST与未访问顶点之间边中选出最短的边,在满足MST的前提下,将这条边加入到MST 代码 import java.util.LinkedList; import jav...
分类:其他好文   时间:2014-06-21 20:37:01    阅读次数:289
算法7-3:深度优先搜索
深度优先搜索最初是因为迷宫游戏而诞生的。在一个迷宫中,有一个入口和一个出口,其中只有一条路径能从入口到达出口。在走迷宫的时候,每次将走过的地方进行标记,遇到死胡同的时候可以沿着进来的路线后退,找到新的没走过的拐角再尝试新的路线。这种方法的效率很高,因为每个地方只需要走过一次即可。其实,这就是深度优先搜索。 深度优先搜索的目标就是系统化地遍历整个图,让算法的效率更高。 ...
分类:其他好文   时间:2014-06-18 07:55:19    阅读次数:189
传递闭包
传递闭包: import numpy A0 = numpy.array( [ [False, True, False, False], [False, False, False, True], [False, False, False, False], [True, False, True,...
分类:其他好文   时间:2014-06-18 07:52:22    阅读次数:212
算法7-2:图论接口
本节介绍如何在程序中表示一张图。 顶点 在程序中,顶点用整数表示就可以了。因为整数可以作为数组的下标,也可以作为哈希表的键。所以用整数是最方便的。 当然,在一张图中可能会出现一些异常情况,比如自己连接自己,两个顶点之间存在多个边。这些异常情况也是要考虑的。 接口 为了表示一张图,就要创建专...
分类:其他好文   时间:2014-06-18 06:56:36    阅读次数:208
POJ 3169 Layout (图论-差分约束)
POJ 3169 Layout (图论-差分约束) 题目大意: n头奶牛按1到n排好序,md个限制及mt个限制,md行表示奶牛A与奶牛B相差最多D,mt个限制奶牛A与奶牛B相差最少D,问你奶牛1与奶牛n最多相差多少? 解题思路: 限制条件 : 1、相邻奶牛之间,编号大的距离大于编号小的,即 dist[1]-dist[2]<=0,dist[2]-dist[3]<=0,dist[3]-dist[4]<=0。。。。dist[n-1]-dist[n]<=0 2、md个限制 A与奶牛B相差最多D,dist[A]...
分类:其他好文   时间:2014-06-18 06:07:39    阅读次数:209
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!