给大家一个,vb程序员一个Dijkstra最短路径的动态库,懒得思考的就用吧。

具体情况看文件内附的测试程序。

1、本动态库用来找到从一个指定点到达目的地点的最短路径。

2、本动态库不是最快的,但是相对容易看懂,和算法中介绍的方法尽可能表述一致(使用两个集合列表,而不是用数组for循环来模拟集合)。

3、要想使用动态库,请参考我给出的示例程序。或者:在项目中添加引用->浏览到动态库,然后在编程文档最上面添加Import Dijsktra。然后添加代码即可:参考我给出的示例程序。

如果示例程序无法运行,请把Dijkstra.dll拷贝到windows\system目录下。或者更改程序->引用中的Dijkstra.dll的路径。

4、源代码看心情发吧。毕竟敲了半天,说明写了半天,累个半死。

5、程序使用VB.net2010编写,使用.netFramwork2.0框架。

作为基础和我一样的菜鸟,本程序尽可能使用最少的编程技术。只要掌握下列基本知识即可完全搞懂:

重载;

泛型;以便支持各种类型的节点,比如String,Point等

List( of T)列表;强类型列表,必须强制列表中的数据都是同一种类型。可以方便的排序、查找、检查重复等。

IEquatable接口;这个接口是为了快速查找数据、以及检查重复。

IComparable接口;这个接口是为了让数据自动排序。

6、本动态库使用Dijkstra算法。

具体数学分析请参考:火星十一郎-张朋飞的博文:彻底弄懂最短路径问题

文件下载地址:点击打开链接


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值