我正在实现一个深度优先搜索算法,用于寻找迷宫的出口,目前使用的是单线程。
我计划通过创建多个线程来提高效率,这些线程将使用相同的单线程算法搜索树,但在遇到交叉口时,我会随机选择下一步走向。
例如,当线程遇到可以向东或向西走的交叉口时,其中一半线程向东走,另一半线程向西走。直到其中一个线程找到了解决方案路径为止,这样持续进行。
这种并行实现DFS的方法是否有效?
我计划通过创建多个线程来提高效率,这些线程将使用相同的单线程算法搜索树,但在遇到交叉口时,我会随机选择下一步走向。
例如,当线程遇到可以向东或向西走的交叉口时,其中一半线程向东走,另一半线程向西走。直到其中一个线程找到了解决方案路径为止,这样持续进行。
这种并行实现DFS的方法是否有效?