最近在搞Djistra算法的优化问题(GPS地图导航上最短路径问题)。感觉蛮头大的
看过研究生论文
所谓的优化就是在对最小权值边的查询过程中,对所有边进行排序,提高查找效率
别的好象没有见过
首先是数据的准备过程,两个表,一个是有向的线数据,一个是节点数据,当程序运行时,把表的有向数据加入到ArrayList,这数据包括,起点号,终点号,权值,具备了这些数据,才开始真正算法
借助BinaryHeap实现Dijkstra,近两万Node,三万Arc,求解速度均在一秒以内。更多Node时也可以借助Fibonacci || Pair Heap实现,时间复杂度为O(nlog(n).