public void printPaths(){
int[] path = new int[256];
printPaths(node,path,0);
}
private void printPaths(BinaryTreeNode node,int[] path,int pathlen){
if(node == null) return;
//将根节点添加到赎罪当中
path[pathlen] = node.getData();
pathlen++;
//如果当前节点为叶子节点,则输出到此节点的路径
if(node.getleft() == null && node.getRight() == null){
printArray(path,pathlen);
}
else{
//否则继续遍历左右子树
printPaths(node.getLeft(),path,pathlen);
printPaths(node.getRight().path,pathlen);
}
}
private void printArray(int[] ints,int len){
for(int i = 0; i<len; i++){
System.out.print(ints[i]+"");
}
System.out.println();
}
输出所有从根节点到叶子节点的路径
最新推荐文章于 2023-07-06 15:03:49 发布
本文介绍了一种二叉树所有路径打印的方法。通过递归的方式遍历二叉树的每个节点,并记录从根节点到当前节点的路径。当到达叶子节点时,输出该路径。该方法适用于计算机科学中数据结构的学习。

996

被折叠的 条评论
为什么被折叠?



