顺序存储二叉树就是用连续的数据单元,如数组来存储二叉树中的元素,一般按照自上而下、从左往右的顺序存储。这种情况只考虑完整的二叉树,如下所示:
如果当前结点编号为n,则左边的结点编号为2*n+1,右边是2*n+2。
实现:
public class ArrayTree {
private Node[] array;
public ArrayTree(Node[] array ) {
this.array=array;
}
public void preList(int index) {
/*使用前序遍历
*
*/
if (array.length==0) {
System.out.println("数组为空");
}else {
System.out.println(array[index]);
}
//利用顺序化二叉树的序号的规律左右遍历
if (index*2+1<array.length) {
preList(index*2+1);
}
if (index*2+2<array.length) {
preList(index*2+2);
}
}
}