是否存在固定内存使用的树遍历算法?

我有树的第一个节点.像这样的东西:

class TreeNode {
   int uniqueValue;
   List<TreeNode> children;
}

我想找到打印树的所有节点的最有效内存的方法.树可能很大或非常大.它可以是深或宽.我知道带递归和堆栈的算法.我想要找到的是独立于图形大小使用固定数量内存的算法.

树不是二进制!

最佳答案 没有这样的O(1)算法.在最坏的情况下,内存使用总是O(N).您可以通过添加字段来“欺骗”以支持遍历到图形节点上.这样,如果您能够将图形加载到内存,则可以遍历它(使用BFS或DFS).

点赞