当前位置:编程学习 > C#/ASP.NET >>

探讨一个找最短路径的问题

--------------------编程问答-------------------- 这属于数据结构的指示。
楼主可以学习下图的遍历方法,有两种:深度遍历和层次遍历。
我推荐用图的深度搜索,这个算法网上好多参考。 --------------------编程问答-------------------- 这个图是根据一个TXT文本归纳出来的
TXT文本内容:
===============文本内容这行不算======================
1 //这行可以忽略
1 2 3 5 10 13 14  //主干(即竖向可通的点)
3                 //这行及以后的表示主干上某一点,及其右、左边能走通的节点
3 4               //相同的点开始,第一行表示右手边的,第二行表示左手边的
5 6 7 8
5 9
10 11 12
10 9
14 15
===============文本内容这行不算======================
这样应该怎样定义成 图  --------------------编程问答-------------------- 建议你学学数据结构,至于如何构造图,数据结构中一般都采用邻接表,“第一行表示右手边的,第二行表示左手边的”这都是些土办法,没有通用性。

最短路径常用的是Dijkstra算法,是在深度优先搜索的基础上增加了点代表路径长度的权值,Google一下就能找到很多 --------------------编程问答-------------------- http://www.google.com.hk/search?hl=zh-CN&q=a*%E8%B7%AF%E5%BE%84&hl=zh-CN&sourceid=cndr --------------------编程问答-------------------- 你这是什么情况,怎么那么表示?
你要用文字来表示的话,建议用广义表表示。 --------------------编程问答-------------------- 其实就是 Dijkstra 算法的退化,你把每个边的长度设为1
通过Dijkstra找出来的就是最短路径
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,