假设我有以下网格。我必须连接成对的字母。不仅必须连接相同的字母,而且我还必须确保连接路径不会相互交叉。什么算法可以告诉我是否可以在不交叉路径和最短路径的情况下连接所有对?
我意识到这是一个图形问题,最短路径部分可以使用 BFS 解决。我不确定的是交叉路径。
+---+---+---+---+---+---+---+---+
| A | | | B | | | | |
+-------------------------------+
| | | | | | | | |
+-------------------------------+
| | | B | | | | D | |
+-------------------------------+
| | | | | | | | |
+-------------------------------+
| | C | | | C | | | |
+-------------------------------+
| | | | A | | | | |
+-------------------------------+
| | | | | | | D | |
+-------------------------------+
| | | | | | | | |
+---+---+---+---+---+---+---+---+