21
2017
03

计算地铁票价-最短路径问题

题目:

1.已知地铁票价规则是

起步6公里内每人次3元,6-12公里每人次4元,12-32公里每10公里加1元,32公里以上每20公里加1元

根据提供的地铁邻接表,编写程序求出每个站点之间的票价。


TIP:使用表中的x,y进行公里数计算 假定 1km为15px

      如苹果园坐标是:x="-681.3" y=“138.3”,古城的坐标是 x="-661.7" y=“170.6"

      他们的distance是37.78  转换后就是 37.78 / 15 = 2.51 km

搜到两种方法:

1、Dijkstra算法

参考:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/31/2615833.html

demo(点击任意一个地铁站点,会标出到任意一个站点的最短距离和票价,以及方向,支持拖动,滚轮缩放):

获得 Adobe Flash Player


2、Floyd 算法

参考:http://blog.csdn.net/turingbooks/article/details/28635933

demo(点击任意一个地铁站点,会标出到任意一个站点的最短距离和票价,以及方向,支持拖动,滚轮缩放):

获得 Adobe Flash Player



源码打包下载

« 上一篇下一篇 »

相关文章:

多边形分组  (2017-4-20 23:42:36)

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。