莫西莫西 发表于 2013-8-18 16:10

Dijkstra算法用matlab实现遇到问题!!

我碰到一个和Dijkstra算法类似求最短路径的问题,但是有点不同的是我求的路径上的权值不能直接相加,每个相邻节点之间的路径有两个值,一个是长度,一个是人口数,路径上的人口数相加除以长度相加得到人口密度。我想得到一条人口密度最大的路径,也就是说输入两个权值矩阵,不知道怎么编程,求助啊,,那个大神能给出源代码?有起点和终点。

madio 发表于 2013-8-18 16:37

你可以还用最短路的程序,只不过把每条路的人口密度的倒数求出来做为这条路的长度,这样你求的最短路就应该是人口密度最大的路!

莫西莫西 发表于 2013-8-18 16:40

madio 发表于 2013-8-18 16:37 static/image/common/back.gif
你可以还用最短路的程序,只不过把每条路的人口密度的倒数求出来做为这条路的长度,这样你求的最短路就应该 ...

额,这倒是可以求出最大密度,可是两条路的人口密度不能直接相加啊,没有意义啊:dizzy:

madio 发表于 2013-8-18 17:52

密度不能相加,那你的找到人口密度最大的路径这个概念如何定义,要不就是人口可以相加,道路长度可以相加,然后再相除得到密度,这也不妨碍我上面说的方法,就是你前期工作多进行一些计算而已!
页: [1]
查看完整版本: Dijkstra算法用matlab实现遇到问题!!