Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
查找树中所有叶子的位置(JAVA)_Java_Tree - Fatal编程技术网

查找树中所有叶子的位置(JAVA)

查找树中所有叶子的位置(JAVA),java,tree,Java,Tree,假设我有一棵树,如下所示: O / \ O \ / \ \ A B C 我该如何找到树中所有叶子的位置并将它们输出到数组或HashMap中 因此,上面的树将返回: {{ A , 00 },{ B , 01 },{ C , 1 }} leaf left, left leaf left, right leaf right 我想沿着这棵树迭代,直到它找到一

假设我有一棵树,如下所示:

     O
    / \
   O   \
  / \   \
 A   B   C
我该如何找到树中所有叶子的位置并将它们输出到数组或HashMap中

因此,上面的树将返回:

{{  A   ,     00      },{  B   ,     01      },{  C   ,   1   }}
   leaf    left, left     leaf   left, right     leaf   right
我想沿着这棵树迭代,直到它找到一片叶子,并记住它所走的路。但我不确定这是否是最有效的方法


有什么想法可以实现吗?

假设没有现成的元数据可供使用,最简单的解决方案可能只是一个常规的深度优先搜索,其中包含迄今为止所采用的路径堆栈。我看不出怎样才能以更有效的方式来做这件事。

你可以在树上迭代,直到找到一片叶子并记住它的路径。真的,这个问题听起来太像“我想让别人为我做这件事,我会说些什么,我希望我能得到一个带有代码的答案”为什么你认为这样?我要密码了吗?!我已经有了向下迭代的想法,我正在寻求一种更有效的方法的建议。