最短路径算法
Posted 圣贤曰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最短路径算法相关的知识,希望对你有一定的参考价值。
这个算法之前写过,是自己新建一个无向图,然后计算最短路径,现在是在网格(mesh)上,完成这个算法。
前几天这个算法写了出来,不过路径似乎不是我想要的,我通过输出位置信息看了一下,不太对,今天我要尝试把这个路径显示出来看看究竟是错在了哪里。
我通过opengl来显示这个路径,先绘制一个显示窗口:
一个通过平滑方式,用for循环写的八边形显示出来了。下面我要通过读mesh的方式,把所有的点线面显示出来。当然,最短路径肯定要用不一样的方式突出出来,看看究竟错在了哪。
先通过随机数的形式给网格赋了颜色,把网格显示了出来,接下来就要调整颜色,并把那些被我标记的路径上的点凸显出来。
全红似乎有点诡异。。。还是换个颜色,把标记色留给红色吧。。。
就这样吧,接下来显示那个错误的路径看看究竟长成啥样。。。
这个错误的路径显示出来了,从最右下往上走了一点,经过一段之后,然后斜上,中间跳过了很多东西,似乎不是我想要的结果,看来算法本身写的有问题。之前是用遍历网格上所有点写的,经此一役,我决定还是遍历网格上所有的边来显示,这样至少不会跳过那么多东西。。。
对于之前算法跑出来的结果,我只能说,简直玄幻。。。
ps1:接下来的工作就是用边来找最短路径。
ps2:没放代码一来这不是一个正确的算法结果,
以上是关于最短路径算法的主要内容,如果未能解决你的问题,请参考以下文章
a*算法求最短路径和floyd还有dijsktra算法求最短路径的区别?