让我们假设我有一棵树,如下所示:
O
/ \
O \
/ \ \
A B C
如何查找此树中所有叶子的位置并将其输出到数组或HashMap中?
所以上面的树会返回:
{{ A , 00 },{ B , 01 },{ C , 1 }}
leaf left, left leaf left, right leaf right
我正在考虑迭代树,直到找到一片叶子并记住它走了哪条路。但我不确定这是否是最有效的方法。
任何想法如何实施?
答案 0 :(得分:2)
假设没有可用的元数据,最简单的解决方案可能只是一个常规的深度优先搜索,其中包含到目前为止所采用路径的堆栈。我不知道如何以更有效的方式做到这一点。