算法:求汉密尔顿回路路径长度最短
给定平面的上N+1个点,现要找一条回路,经过其中每个点一次且仅有一次,使路径和最短。
问题原型为:有N个零售店,一个配送中心,现在有一辆送货车从配送中心出发,给N个零售店送货,送完后回配送中心,要求总体路径最短。
问题点数:20、回复次数:5Top
1 楼mountainfrank(wood)回复于 2002-06-14 15:39:37 得分 0
典型的带权广度搜索问题,--------每次走一步,判断是否重复,如不重复,累加权,判断是否终点(即起点),如果是,选择权最小的路径打印。Top
2 楼molester()回复于 2002-06-14 16:40:28 得分 0
其实就是找出所有的汉密尔顿回路,看谁权最小Top
3 楼starfish(海星)回复于 2002-06-14 21:08:21 得分 20
这是npc问题,目前还没有多项式时间的算法,只有剪枝搜索了,如果允许近似解的话可以用模拟退火法。Top
4 楼zhoukun666(我喜欢==〉{ 。}{ 。})回复于 2002-06-14 21:58:46 得分 0
谁有源代码?---我一百份!Top
5 楼zsxiong(老幺)回复于 2002-06-15 09:50:09 得分 0
如果一个一个的试的话,时间复杂度是N!
我去年上《运筹学》的时候,记得有方法可解(求近似解),但可惜是我的书不在这一边了。
海星说得很对,谢谢大家!Top




