| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2053 人关注过本帖
标题:求问最大网络流中找path的问题
只看楼主 加入收藏
xebec
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-8-12
收藏
 问题点数:0 回复次数:10 
求问最大网络流中找path的问题
我用邻接表(adjacency list)表示一个图,就是用一个表存放所有邻接的顶点,那么我该怎么样找到从起点到终点的path?有的路线找到一半就中断了,不能到达终点……(不知道我有没有表述清楚)
搜索更多相关主题的帖子: path 网络流 adjacency 终点 顶点 
2007-10-24 22:30
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
收藏
得分:0 
好像不是很清楚耶。。。比如表结构如何?起点和终点的选择。。。

努力成为菜鸟!
2007-10-25 10:28
xebec
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-8-12
收藏
得分:0 
就是我先列一个数组,把所有的点存进去,如果顶点1和点2,3,4相连,那就把2,3,4连在数组中存放1的单元的后面,这样怎么找路径才能保证把所有的路线都找到?

错了好多
2007-10-26 19:12
xebec
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-8-12
收藏
得分:0 

每个点都有在数组中的编号 起点和终点也有 事先已知


错了好多
2007-10-26 19:13
静思
Rank: 3Rank: 3
来 自:沈阳
等 级:新手上路
威 望:8
帖 子:630
专家分:0
注 册:2006-2-28
收藏
得分:0 
楼主想求的是两点之间的路径问题,若要判断任意两个顶点是否有边或弧相连,必须遍历第i个或第j个链表,从这个角度上说,不及邻接矩阵方便。

英者自知,雄者自胜
2007-10-26 19:50
xebec
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-8-12
收藏
得分:0 

我只要找到起点到终点的路径就好了 中间经过什么点不用考虑的 感觉用邻接矩阵找和用链表找差不多(汗……)如果找到下一个点没有路了 还是要返回前一个点再找的 不知道有没有什么方法?


错了好多
2007-10-26 20:32
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 

以下转载
最大流问题是网络理论中的一个重要内容,在现实生活中有着相当广泛的应用,如交通运输网络中的车流、人流,供水系统中的水流,通讯网络中的信息流,金融系统中的现金流等。如何充分利用现有条件使网络具有最大的流通能力,这就是所谓的最大流问题。2001年高考12题就是以最大流问题为背景的信息流问题。

在给出最大流问题的算法之前,先介绍一些相关的最大流问题的概念。

⑴弧、有向图:把有向的边称为弧,由此得到的图称为有向图。

⑵收点、发点、中间点:只有流出没有流入的点称为发点,只有流入而没有流出的点称为收点,其它点称为中间点。

⑶流量:有向图上每条弧 为有向图上的点)的允许流量为 ,实际流量为 ,则 。

⑷可行流:从发点到收点的一个流量图,满足每条弧的实际流量不超过允许流量,且对于中间点,流入与流出的量应该相等。

⑸简化图:简化后实际流量没有变化的图。

⑹可增广图:排除已发现的可行流后,尚有可挖掘可行流的图。

由此可见,最大流问题就是寻找网络中流量最大的可行流。

下面介绍一种寻找最大流的简明算法。

步骤一:构造简化图,方法如下:

①当点 之间只有一个中间点 ,则将 去掉,以 作为弧 的允许流量。

②当点 之间有两条弧时,将两条弧上的容许流量之和作为改成一条弧后 的容许流量。

步骤二:寻找1个(或几个)可行流,并算出可行流的流量。

步骤三:构建可增广图,方法如下:

①当图中的弧 满足 = 时,将弧 去掉。

②当图中的弧 满足 < 时,将 - 作为弧 在可增广图中的容许流量。

重复以上步骤,直到可以清晰地找到所有可行流为止,得到的所有可行流的流量之和就是有向图的最大流量。


倚天照海花无数,流水高山心自知。
2007-10-26 21:15
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
通常最大网络流有这么些解法
增广路算法
预流推进算法

倚天照海花无数,流水高山心自知。
2007-10-26 21:17
xebec
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2007-8-12
收藏
得分:0 
以下是引用nuciewth在2007-10-26 21:17:35的发言:
通常最大网络流有这么些解法
增广路算法
预流推进算法

求具体算法解释 另外 之前算法的解释看不懂哈 什么是弧 = ,<?


错了好多
2007-10-26 22:10
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
原来你还没有学过图啊.
那正好可以请教一下cobby,他是教数据结构的老师.
他应该更有经验教的.

倚天照海花无数,流水高山心自知。
2007-10-26 22:45
快速回复:求问最大网络流中找path的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018931 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved