二叉树的顺序存储

从数据存储来看,数组存储方式和树的存储方式可以相互转换,即数组可以转换成树,树也可以转换成数组。

二叉树的顺序存储_第1张图片

二叉树的顺序存储_第2张图片

package com.zx.ds.tree;

//顺序存储二叉树

class ArrBinaryTree{
    private int arr[];

    public ArrBinaryTree(int[] arr) {
        this.arr = arr;
    }

    //重载preOrder
    public void preOrder(){
        this.preOrder(0);
    }

    //编写一个方法,完成顺序存储二叉树的前序遍历
    public void preOrder(int index){

        //如果数组为空,或者 arr.length = 0
        if(arr.length==0||arr==null){
            System.out.println(" array is null..");
            return;
        }

        //输出当前这个元素
        System.out.println(arr[index]);
        //向左递归遍历
        if((index*2+1)
先序遍历
1
2
4
5
3
6
7
中序遍历
4
2
5
1
6
3
7

 

你可能感兴趣的:(数据解构&算法)