码迷,mamicode.com
首页 > 其他好文 > 详细

采用先序遍历 和层次遍历递归建立二叉树--进行封装

时间:2017-05-04 12:07:24      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:div   length   warnings   swa   index   string   val   建立   遍历   

 1 package com.offer;
 2 
 3 public class TreeNode {
 4     
 5 int val = 0;
 6 TreeNode left = null;
 7 TreeNode right = null;
 8 
 9 public TreeNode(int val)
10 {
11     this.val=val;
12 }
13 
14 public TreeNode()
15 {
16     CreateBinaryTree();// 采用默认的
17     //preShow(this.root);
18 }
19 public TreeNode(int array[])
20 {
21    this.root=CreateBinaryTree(array);
22 }
23 public TreeNode root;  
24 
25 public void CreateBinaryTree()
26 {
27     int array[]={5,3,6,-1,-1,2,-1,-1,1,-1,-1};
28     this.root=CreateBinaryTree(array);
29 }
30 public TreeNode CreateBinaryTree(int array[])
31 {
32     
33     /**第一种建立二叉树方式采用先序遍历建立二叉树**/
34     return CreateTreePre(array);
35     
36     /**第二种方式采用层次遍历方式建立二叉树*/
37     //return CreteTreeLevel(array,0);
38 }
39 
40 @SuppressWarnings("unused")
41 private TreeNode CreateTreeLevel(int[] array,int index) {
42     if(index>=array.length || array[index]==-1)
43         return null;
44     TreeNode node=new TreeNode(array[index]);
45     node.left=CreateTreeLevel(array,2*index+1);
46     node.right=CreateTreeLevel(array,2*(index+1));
47     return node;
48 }
49 private int index=0;
50 
51 private TreeNode CreateTreePre(int array[])
52 {
53       int val=array[index++];
54       if(val==-1)
55             return null;
56         else
57         {
58             TreeNode node=new TreeNode(val);
59             node.left=CreateTreePre(array);
60             node.right=CreateTreePre(array);
61             return node;
62         }
63 }
64        
65 public void preShow(TreeNode node) { // 先序遍历  
66     if (node != null) {  
67         System.out.print(node.val + " ");  
68         preShow(node.left);  
69         preShow(node.right);  
70     }  
71 }  
72 
73  public static void main(String[] args)
74  {
75     TreeNode r=new TreeNode();}
76 }

 

采用先序遍历 和层次遍历递归建立二叉树--进行封装

标签:div   length   warnings   swa   index   string   val   建立   遍历   

原文地址:http://www.cnblogs.com/woainifanfan/p/6806136.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!