public class ArrayBinatyTree {
int[] data;//该二叉树包含一个数组属性
public ArrayBinatyTree(int[] data){
this.data=data;
}
public void frontshow(){//构造方法,直接从最顶处结点开始前序遍历
frontshow(0);
}
public void frontshow(int index){
if(data.length==0||data==null){//如果数组空或者数组长度为0
return ;//结束该次遍历
}
System.out.println(data[index]);
if(2*index+1<data.length){//某结点的左子节点存在时
frontshow(2*index+1);
}
if (2*index+2<data.length){//某结点的右子节点存在时
frontshow(2*index+2);
}
}
}
public class Testab {
public static void main(String[] args) {
int[] data=new int[]{1,2,3,4,5,6,7,8,9};
ArrayBinatyTree tree=new ArrayBinatyTree(data);
tree.frontshow();
}
}