北京地铁线路图纯算法附带求极权值(原创) Level2
2013-04-28 16:22
302 查看
北京地铁线路图:
在上一版本中由于时间仓促所以本人没有全部把北京地铁线路写入程序里面,这是第二版本,接下来还有好几个思路和大胆的想法 感兴趣的请关注! 谢谢
现在这一版本已经把北京地铁全部路线已经加载进来了! ////"昌平线","房山线","1","2","4","5","6","8","9","10","13" "15","亦庄线" ,"八通线" 八通线
QA:为什么没加机场线呢 AN:机场线显然是去机场的,平时换乘地铁不至于东直门到三元桥去坐25元的机场线吧 也不太划算! 要是非有人想 后期加进来一样,也不影响现在的思路,
1:
这里我给出程序加载数据的代码:
以这种方式加载的目的不是因为代码好写而是因为后期还有一定的完善代码 先预留这里 到时候在写入XML文件中程序进行读取,ps(这里的数据来至百度地图,难免存在一点点误差,都说误差是不可避免的!)
这样的数据有很多,这里我给出运行加载数据以及存入到hashtable中的代码和消耗时间:
这是消耗的时间(精确到了毫秒)
2:
因为1的步骤即可进行第二步:
消耗时间:
地图的递归查询已经完了, 到这里已经差不多了! 后面是取权值, 在下一版本中我会用更加大胆更加高性能的思路给写出来!
这是测试的结果的部分数据:
LoadData begin:20130428161952247
LoadData end:20130428161952247
GetF() begin:20130428161952:247
GetF() end:20130428161952:403
20130428161952559
西二旗------------->国贸:
查看全部数据请点击我
测试结果数据END
从这些方法中看出来了一些问题比如:数据构造还不完善,算法执行时间较长,等等问题!
热烈欢迎大家发表自己的意见和其他! 在下一版本中我会用很大胆的想法写出来改善之前的低效率递归方法!
祝大家五一快乐!
下篇再见!
BY:SF
time: 2013-04-28-16:18
在上一版本中由于时间仓促所以本人没有全部把北京地铁线路写入程序里面,这是第二版本,接下来还有好几个思路和大胆的想法 感兴趣的请关注! 谢谢
现在这一版本已经把北京地铁全部路线已经加载进来了! ////"昌平线","房山线","1","2","4","5","6","8","9","10","13" "15","亦庄线" ,"八通线" 八通线
QA:为什么没加机场线呢 AN:机场线显然是去机场的,平时换乘地铁不至于东直门到三元桥去坐25元的机场线吧 也不太划算! 要是非有人想 后期加进来一样,也不影响现在的思路,
1:
这里我给出程序加载数据的代码:
1 ////"昌平线","房山线","1","2","4","5","6","8","9","10","13" "15","亦庄线" ,"八通线" 八通线 begin b1 = "四惠东"; b2 = "土桥"; len = "16.6"; timem = "29"; SWAP(backlist, ref arry, b1, b2, len, timem); ////"昌平线","房山线","1","2","4","5","6","8","9","10","13" "15","亦庄线" ,"八通线" 八通线 end
以这种方式加载的目的不是因为代码好写而是因为后期还有一定的完善代码 先预留这里 到时候在写入XML文件中程序进行读取,ps(这里的数据来至百度地图,难免存在一点点误差,都说误差是不可避免的!)
这样的数据有很多,这里我给出运行加载数据以及存入到hashtable中的代码和消耗时间:
这是消耗的时间(精确到了毫秒)
2:
因为1的步骤即可进行第二步:
消耗时间:
///时间复杂度比较复杂,因为换乘结点的关系导致的 ///最坏情况下(每个站之间都有连线,但是地铁线路图实际上是不存在次情况的):O(2^n) ///相反 ///最优情况下(之间只有唯一的连接点,次情况下也不是很现实的,有的地铁换乘是多个换乘点都在同一条线上的) ///此时用hashtable所以是:O(1) HashSet<string> GetF(HashSet<string> beginlist, int i) { if (mainht == null || mainht.Count == 0) return null; HashSet<string> returnlist = new HashSet<string>(); string[] earry = null; if (beginlist.Count == 0) isend = 1; else { //move code } earry = null; if (isend == 0) return GetF(returnlist, i); else return null; }
地图的递归查询已经完了, 到这里已经差不多了! 后面是取权值, 在下一版本中我会用更加大胆更加高性能的思路给写出来!
这是测试的结果的部分数据:
LoadData begin:20130428161952247
LoadData end:20130428161952247
GetF() begin:20130428161952:247
GetF() end:20130428161952:403
20130428161952559
西二旗------------->国贸:
查看全部数据请点击我
测试结果数据END
从这些方法中看出来了一些问题比如:数据构造还不完善,算法执行时间较长,等等问题!
热烈欢迎大家发表自己的意见和其他! 在下一版本中我会用很大胆的想法写出来改善之前的低效率递归方法!
祝大家五一快乐!
下篇再见!
BY:SF
time: 2013-04-28-16:18
相关文章推荐
- 北京地铁线路图纯算法附带求极权值(原创) 性能提升版
- C# 城市线路图纯算法附带求极权值(原创)
- 浅谈控件(组件)制作方法一(附带一delphi导出数据到Excel的组件实例)(原创)
- C#中 城市线路图的纯算法以及附带求极权值
- [原创]NSLookUP命令小结及附带DNS名词解释(一)
- [原创]使用ajaxFileUpload.js上传文件时附带额外参数。
- 完全国人自主研发原创的智能软件路由器BDS即将发布,附带企业服务总线ESB功能
- [原创]NSLookUP命令小结及附带DNS名词解释(二)
- 完全国人自主研发原创的智能软件路由器BDS即将发布,附带企业服务总线ESB功能
- 【原创】CLEVO P157SM外接鼠标键盘失灵解决:更换硅脂(附带最新跑分数据)
- iOS-公司开发者账号的申请和注册(原创+亲身+2016年申请+附带与邓白氏公司的往来邮件截图)
- 地铁线路图高性能查找算法系统,最短路径查询地铁网络拓扑高效率算法-原创-附带demo
- 用JavaScript 获得 radio 和 select 当前选中的值 --依然附带两段原创英文
- [原创] Windows Forms 实现安全的多线程详解(附带程序代码示例)
- 各位转载本人原创文章的亲们,请附带原文章网址来源好吗?
- [伊达原创] 在APACHE环境下配置下载服务器 推荐
- 凤姐的原创诗歌 思想的悲哀
- 【Orz】喜闻乐见的原创题被虐...
- Netty In Action中文版 - 第八章:附带的ChannelHandler和Codec
- 【原创】js中利用cookie实现记住密码功能