2011-06-22 18:41:25Morris

[轉貼*] 中國郵路問題 The Chinese post problem

这就是一个经典的问题中国邮路问题:
给出一个连通的无向的可重边的有权图G,
求最短的回路,使得每边至少遍历1次。
由于每边至少遍历一次,所以最短路的瓶颈就在于重复遍历。由于图一直保持连通性,
所以两两奇点之间都存在欧拉路;又两两奇点之间的最短路可求;奇点个数为偶数。
所以问题就等价于找一个奇点构成的完全图G’(V,E)的最小权匹配(Perfect Matching in General Graph)。
V(G’)为原图G中的奇点,每条边为两奇点对应原图的最短路长度。
算法:
1. 确定G中的奇点,构成G’。
2. 确定G’两两结点在G中的最短路作为它们在G’中的边权。
3. 对G’进行最小权匹配。
4. 最小权匹配里的各匹配边所对应的路径在G中被重复遍历一次,得到欧拉图G’’。
5. 对G’’找一条欧拉路即可。

有向的中国邮路问题,比较复杂。

d915. 3. 洗街車路線問題