zoukankan      html  css  js  c++  java
  • 顺序存储二叉树


    package jiegou.tree;
    
    import jdk.packager.services.userjvmoptions.PreferencesUserJvmOptions;
    
    import java.util.ArrayList;
    
    public class ArrayTreeDemo {
        public static void main(String[] args) {
            int[] arr = {1,2,3,4,5,6,7};
    
            ArrayBinaryTree arrayBinaryTree = new ArrayBinaryTree(arr);
            arrayBinaryTree.preOrder();
        }
    }
    
    class ArrayBinaryTree
    {
        private int[] arr;// 存储数组
    
        public ArrayBinaryTree(int[] arr)
        {
            this.arr = arr;
        }
    
        public void preOrder(){
            this.preOrder(0);
        }
    
        // 完成顺序存储
        // index 数组的下标
        public void preOrder(int index)
        {
            if(arr == null || arr.length == 0) {
                System.out.println("数数为空 不能按二叉树遍历");
                return;
            }
    
            // 根
            System.out.println(arr[index]);
    
            // 左
            if(index * 2 +1 < arr.length ){
                preOrder(index*2+1);
            }
    
            // 右
            if(index * 2 +2 < arr.length){
                preOrder(index*2 + 2);
            }
        }
    }
    
    
  • 相关阅读:
    Python之sys & os
    1161
    1142
    P1599 货币
    P1547逆转,然后再见
    P1629八
    P1753HackSon的趣味题
    Problem 2233 ~APTX4869
    1269
    1091. Tmutarakan Exams
  • 原文地址:https://www.cnblogs.com/brady-wang/p/15143248.html
Copyright © 2011-2022 走看看