易码技术论坛

 找回密码
 加入易码
搜索
查看: 128929|回复: 3

[求助]用c编写求最短路径的算法

[复制链接]
发表于 2006-1-2 15:55:00 | 显示全部楼层
这是一个用C++写的,用的是Dijkstra算法,找单源最短路径
[attachment:4929]

  1. [img]attachment/2006-1/2006121650435450.gif[/img]
  2. The adjoining matrix is below:(-1 means no path)
  3.         1    2    3    4    5
  4.   ------------------------------
  5.   1|    0   10    3   20   -1  |
  6.   2|   -1    0   -1    5   -1  |
  7.   3|   -1    2    0   -1   15  |
  8.   4|   -1   -1   -1    0   11  |
  9.   5|   -1   -1   -1   -1    0  |
  10.   ------------------------------

  11. Start from 1:
  12. Step 1, deal with 1:     0   10    3   20   -1
  13. Step 2, deal with 3:     0    5    3   20   18
  14. Step 3, deal with 2:     0    5    3   15   18
  15. Step 4, deal with 4:     0    5    3   15   18
  16. Paths:
  17. Path to 2: 1->3->2
  18. Path to 3: 1->3
  19. Path to 4: 1->3->2->4
  20. Path to 5: 1->3->5

  21. Start from 2:
  22. Step 1, deal with 2:    -1    0   -1    5   -1
  23. Step 2, deal with 4:    -1    0   -1    5   16
  24. Paths:
  25. No path to 1
  26. No path to 3
  27. Path to 4: 2->4
  28. Path to 5: 2->4->5

  29. Start from 3:
  30. Step 1, deal with 3:    -1    2    0   -1   15
  31. Step 2, deal with 2:    -1    2    0    7   15
  32. Step 3, deal with 5:    -1    2    0    7   15
  33. Paths:
  34. No path to 1
  35. Path to 2: 3->2
  36. Path to 4: 3->2->4
  37. Path to 5: 3->5

  38. Start from 4:
  39. Step 1, deal with 4:    -1   -1   -1    0   11
  40. Step 2, deal with 5:    -1   -1   -1    0   11
  41. Paths:
  42. No path to 1
  43. No path to 2
  44. No path to 3
  45. Path to 5: 4->5

  46. Start from 5:
  47. Step 1, deal with 5:    -1   -1   -1   -1    0
  48. Paths:
  49. No path to 1
  50. No path to 2
  51. No path to 3
  52. No path to 4
复制代码



[此贴子已经被作者于2006-1-2 17:01:02编辑过]

12326_25936_4927.bmp
12326_25936_4928.gif

12326_25936_4922.rar

4 KB, 下载次数: 452

12326_25936_4924.rar

4 KB, 下载次数: 477

12326_25936_4929.rar

4 KB, 下载次数: 444

心飞 该用户已被删除
 楼主| 发表于 2006-1-3 11:20:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2006-1-3 12:03:00 | 显示全部楼层
原理是一样的,你可以看看Dijkstra.h里面的那个FindPath函数。那个就是寻路的函数。
心飞 该用户已被删除
 楼主| 发表于 2005-12-29 20:04:31 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2025-8-24 14:02 , Processed in 0.010198 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表