我正在尝试创建一种算法,该算法创建一条路径,以最短/最有效的方式将点图连接在一起,确保所有点都连接在一起,并且每个点最多只有两个连接。
在做了一些研究之后,看起来这是一条(无向的)汉密尔顿路径。我当前的算法只是创建一个网络中所有可能连接的列表,然后按顺序选择最短的连接,检查它是否连接到一个点超过两次。但是,它无法检查阻止它将整个图形连接在一起的闭环。
我的方法是完全错误的,还是有一种简单的方法来检查闭环并忽略创建它们的连接?
答案 0 :(得分:1)
找到哈密尔顿路径是NP-complete problem。您可能找不到比尝试每个节点排列更好的解决方案。
如果你找到它,你会立刻rich and famous :)