首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何连接两个点而不交叉另一条路径?

问如何连接两个点而不交叉另一条路径?
EN

Stack Overflow用户
提问于 2012-06-25 04:54:22
回答 1查看 829关注 0票数 7

让我们假设我有下面的网格。我必须连接成对的字母。不仅相同的字母必须连接,而且我还必须确保连接的路径不相互交叉。有什么算法可以告诉我,如果不需要交叉路径和最短路径,就可以连接所有对?

我意识到这是一个图问题,最短路径部分可以用BFS来解决。我不确定的是交叉路。

代码语言:javascript
复制
  +---+---+---+---+---+---+---+---+
  | A |   |   | B |   |   |   |   |
  +-------------------------------+
  |   |   |   |   |   |   |   |   |
  +-------------------------------+
  |   |   | B |   |   |   | D |   |
  +-------------------------------+
  |   |   |   |   |   |   |   |   |
  +-------------------------------+
  |   | C |   |   | C |   |   |   |
  +-------------------------------+
  |   |   |   | A |   |   |   |   |
  +-------------------------------+
  |   |   |   |   |   |   | D |   |
  +-------------------------------+
  |   |   |   |   |   |   |   |   |
  +---+---+---+---+---+---+---+---+
EN

回答 1

Stack Overflow用户

发布于 2012-06-25 07:15:30

这是一个名为“不相交连接路径”的NP完全问题。除了一些超多项式算法(非常慢)外,还有一些近似算法(可能会出错,或者是非最优的)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11183668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档