我有树的第一个节点.像这样的东西:
class TreeNode {
int uniqueValue;
List<TreeNode> children;
}
我想找到打印树的所有节点的最有效内存的方法.树可能很大或非常大.它可以是深或宽.我知道带递归和堆栈的算法.我想要找到的是独立于图形大小使用固定数量内存的算法.
树不是二进制!
最佳答案 没有这样的O(1)算法.在最坏的情况下,内存使用总是O(N).您可以通过添加字段来“欺骗”以支持遍历到图形节点上.这样,如果您能够将图形加载到内存,则可以遍历它(使用BFS或DFS).