如何从递归算法转换为迭代算法

How to convert from recursive algorithm to iterative

本文关键字:迭代 算法 转换 递归算法      更新时间:2023-10-16

如何将以下recursive算法转换为iterative

DFS-Visit(U)
    color[u] = GREY 
    d[u]  =time
    time = time + 1
    for each v = Adj[u] do 
        if color[v] = WHITE
            then p[v] = u
                DFS-Visit(v)
    color[u] = BLACK
    f[u] = time
    time = time + 1

使用stack来保存状态,而不是递归地调用它

这可能对您有所帮助:http://www.cs.mcgill.ca/~pnguyen/251F09/DFS.pdf