24小时热门版块排行榜    

查看: 2033  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

木之枝

铜虫 (小有名气)

[求助] 两点间所有路径的算法,并且求出各情况路径的大小

各点 的 距离矩阵 已知,依据《图论算法及其MATLAB实现》可求得两点间 最短路径 经过的点及其大小。
现在想求两点之间 存在的所有路径,并得到各路径的大小。

如附件中所示,点1到点7的所有路径和路径长度大小。各点之间的距离已知。
两点间所有路径的算法,并且求出各情况路径的大小
1000201.png
回复此楼

» 收录本帖的淘帖专辑推荐

BE A GOOD SCHOLAR

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木之枝

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by 锐利的碎片 at 2013-10-21 10:29:51
用dfs就可以了
比如这个:
def find_all_paths(graph, start, end, path=[]):
        path = path +
        if start == end:
            return
        if not graph.has_key(start):
            re ...

比如各点之间的距离矩阵为
W=[0        1        2        1        2        3;
1        0        1        1        1.414        2;
2        1        0        1.414        1        1;
1        1        1.414        0        1        2;
2        1.414        1        1        0        1;
3        2        1        2        1        0];
为邻接矩阵。
怎么求点1到点6的所有路径啊?
把上面一条边 简化为 点1,下面一条边 简化为 点6.
两点间所有路径的算法,并且求出各情况路径的大小-1
无标题.png

4楼2013-10-21 16:15:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

锐利的碎片

木虫 (正式写手)

star watcher

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
木之枝: 金币+30, ★★★★★最佳答案, 谢谢虫友把程序写出来!非常感谢!!! 2013-10-21 15:26:33
用dfs就可以了
比如这个:
def find_all_paths(graph, start, end, path=[]):
        path = path + [start]
        if start == end:
            return [path]
        if not graph.has_key(start):
            return []
        paths = []
        for node in graph[start]:
            if node not in path:
                newpaths = find_all_paths(graph, node, end, path)
                for newpath in newpaths:
                    paths.append(newpath)
        return paths
这里图是用邻接表存的,邻接矩阵的话改下就可以了
2楼2013-10-21 10:29:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木之枝

铜虫 (小有名气)

引用回帖:
2楼: Originally posted by 锐利的碎片 at 2013-10-21 10:29:51
用dfs就可以了
比如这个:
def find_all_paths(graph, start, end, path=[]):
        path = path +
        if start == end:
            return
        if not graph.has_key(start):
            re ...

因为我对MATLAB不熟,之前求最短路径是从图论书上直接查的程序存为.m文件,然后在命令窗口直接输入邻接矩阵,再输入.m文件里的函数,就得到结果了。

还想请问一下,你编的程序里面 path=[]、  return [] 的括号里需要写什么吗? 我把你的程序也存为.m文件了,但不知道怎么用啊。望解答一下,非常感谢!!!
3楼2013-10-21 15:31:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

锐利的碎片

木虫 (正式写手)

star watcher

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
木之枝: 金币+10, ★★★很有帮助, 谢谢! 2013-10-22 11:05:26
引用回帖:
3楼: Originally posted by 木之枝 at 2013-10-21 15:31:15
因为我对MATLAB不熟,之前求最短路径是从图论书上直接查的程序存为.m文件,然后在命令窗口直接输入邻接矩阵,再输入.m文件里的函数,就得到结果了。

还想请问一下,你编的程序里面 path=[]、  return [] 的括号 ...

这个是python写的。matlab太久不用,已经忘完了。
这是我写的用python的Networkx库计算的例子:
http://nbviewer.ipython.org/7084321
不是研究算法就直接用现成的。
5楼2013-10-21 22:07:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 一志愿吉大化学322求调剂 +3 17501029541 2026-03-23 4/200 2026-03-23 23:47 by Txy@872106
[考研] 306求0703调剂一志愿华中师范 +7 纸鱼ly 2026-03-21 8/400 2026-03-23 23:31 by chixmc
[考研] 303求调剂 +4 元夕元 2026-03-20 4/200 2026-03-23 19:00 by macy2011
[考研] 北科281学硕材料求调剂 +8 tcxiaoxx 2026-03-20 9/450 2026-03-23 12:16 by tcxiaoxx
[考研] 293求调剂 +3 涛涛Wjt 2026-03-22 5/250 2026-03-22 22:21 by jiangpengfei
[考研] 0854电子信息求调剂 +3 α____ 2026-03-22 3/150 2026-03-22 21:28 by zhq0425
[考研] 275求调剂 +6 shansx 2026-03-22 8/400 2026-03-22 15:27 by barlinike
[考研] 材料求调剂 +5 @taotao 2026-03-21 5/250 2026-03-21 20:55 by lbsjt
[考研] 材料与化工(0856)304求B区调剂 +3 邱gl 2026-03-20 7/350 2026-03-21 19:05 by 15709483992
[考研] 0703化学调剂 +4 妮妮ninicgb 2026-03-21 4/200 2026-03-21 18:39 by 学员8dgXkO
[考研] 279求调剂 +5 红衣隐官 2026-03-21 5/250 2026-03-21 14:59 by lature00
[考研] 303求调剂 +5 睿08 2026-03-17 7/350 2026-03-21 03:11 by JourneyLucky
[考研] 299求调剂 +6 △小透明* 2026-03-17 6/300 2026-03-21 02:42 by JourneyLucky
[考研] 化学求调剂 +4 临泽境llllll 2026-03-17 5/250 2026-03-21 02:23 by JourneyLucky
[考研] 332求调剂 +4 ydfyh 2026-03-17 4/200 2026-03-21 02:20 by JourneyLucky
[考研] 一志愿武理材料305分求调剂 +6 想上岸的鲤鱼 2026-03-18 7/350 2026-03-21 01:03 by JourneyLucky
[考研] 考研调剂求学校推荐 +3 伯乐29 2026-03-18 5/250 2026-03-20 22:59 by JourneyLucky
[考研] 288求调剂 +16 于海海海海 2026-03-19 16/800 2026-03-20 22:28 by JourneyLucky
[考研] 材料学求调剂 +4 Stella_Yao 2026-03-20 4/200 2026-03-20 20:28 by ms629
[考研] 0703化学调剂 +5 pupcoco 2026-03-17 8/400 2026-03-19 13:58 by houyaoxu
信息提示
请填处理意见