以平面的正方形拼贴为例,想象一个有限的、连接的和简单连接的拼贴子集 D。D 当然也可以通过为每个图块取一个节点并连接相邻节点来解释为方形网格的特定子图。
假设我在 D和D 的边界中有一个起始节点/图块 A 和一个结束图块 B。
是否有一种简单、直接的算法可以在 A 和 B 之间的 D 中找到相当长的自回避路径?
我发现了有关寻找绝对最长路径的文献,以及次优算法,虽然性能非常好,但看起来非常复杂。我想知道是否存在足够好的驯服算法。
我在这里唯一的想法是计算通过 A* 的最短路径,然后通过横向“折叠”来扭曲它以填充尽可能多的空间,但我不确定这是否是个好主意。
另一个想法是是否有一个几乎愚蠢简单的“扫描线”模式填充 A 和 B 之间的空间,因此对于“矩形”D 表现良好。我怀疑这存在,但我找不到它。