是否可以在不使用回溯方法的情况下实现DFS算法?如果是这样,请说明如何完成。
不使用回溯就无法实现DFS算法。
考虑一下,DFS的核心本质是尽可能从根节点开始探索,直到必须回头探索其他潜在路径为止。这意味着算法一旦到达叶子节点,您便会backtracking到该节点,然后再探索该路径以查找其他选项。
[为了进一步证明这一点,https://medium.com/@andreaiacono/backtracking-explained-7450d6ef9e1a将回溯定义为“一种通用算法... ...逐步为解决方案构建候选,并在确定候选候选不可能完成后立即放弃每个部分候选(“回溯”)。有效的解决方案。”。请参阅这如何适用于DFS。