Java创建完全二叉树

来源:互联网 发布:淘宝怎样发布宝贝 编辑:程序博客网 时间:2024/04/28 14:45

一、问题描述

如何从一个一维数组nums创建一棵完全二叉树

二、Java 代码

public class Tree {public TreeNode buildTree(TreeNode root, int[] nums, int index){if (index>=nums.length) {return null;}root = new TreeNode(nums[index]);root.left = buildTree(root.left, nums, 2*index+1);root.right = buildTree(root.right, nums, 2*index+2);return root;}public void preOrderTravelse(TreeNode root){if (root==null) {return ;}System.out.print(root.val+"   ");preOrderTravelse(root.left);preOrderTravelse(root.right);}public static void main(String[] args) {int[] nums = {1, 2, 3};Tree tree = new Tree();TreeNode root = null ;root = tree.buildTree(root, nums, 0);tree.preOrderTravelse(root);//System.out.println(root.val);}}


0 0