刚刚搞了篇欧拉回路,现在趁热再搞个哈密顿回路……
欧拉回路是跑光所有的边再跑回来,一条边跑且仅跑一遍
哈密顿回路是跑完所有的点再跑回来,路过的节点,跑且只跑一次
哈密顿路径问题在上世纪七十年代初,终于被证明是“NP完备”的。据说具有这样性质的问题,难于找到一个有效的算法。实际上对于某些顶点数不到100的网络,利用现有最好的算法和计算机也需要比较荒唐的时间(比如几百年)才能确定其是否存在一条这样的路径。
——百度百科《哈密顿回路》
那一般咋个跑咧
暴力+回溯 跑……
有时还会要求最短路
就要用分支限界法——就是剪枝……
没去认真找好点的算法,挖个坑,以后填吧……
PS:Hdu2181 是一个赤裸裸的哈密顿回路,且数据量很诚恳
待看博文
http://www.cnblogs.com/cielosun/p/5654577.html
http://blog.csdn.net/duzuokanyunqi1/article/details/46573429