码迷,mamicode.com
首页 > 编程语言 > 详细

二叉树数组实现[C/C++]代码

时间:2014-06-12 12:25:47      阅读:316      评论:0      收藏:0      [点我收藏+]

标签:http   com   使用   c++   代码      

二叉树数组表示
1. [代码][C/C++]代码     
01
#include <stdio.h>
02

03
/*
04
*  使用数组创建二叉树
05
*    1 初始化二叉树,btree[level] 初始化为0
06
     2 level 标识二叉树的坐标
07
          左子树的坐标 level*2
08
          右子树的坐标 level*2+1
09
          从根节点开始,找到合适的位置,插入二叉树
10

11

12
*/
13
create_tree(int *btree,int *data, int len)
14
{
15
    int i;
16
    int level;
17

18
    btree[1]  = data[1];
19
    for(i=2;i<=len;i++)
20
    {
21
        level = 1;
22
        while(btree[level] != 0)
23
        {
24
            if(data > btree[level])
25
            {
26
                level = level*2+1;
27
            }else{
28
                level = level*2;
29
            }
30
        }
31
        btree[level] = data;
32
    }
33
}
34

35
//打印二叉树
36
void print_btree(int *btree,int len)
37
{
38
    int i,j;
39
    for(i=1;i<len;i++)
40
    {
41
        printf("%2d,{%d}\n",i,btree);
42
    }
43
    j = 1;
44
    printf("\t%d\n",btree[j]);
45
    while(j*2 < len){
46
        if(j*2 < len){
47
            printf("%d\t\t",btree[j*2]);
48
            printf("%d\t\t",btree[j*2+1]);
49
            printf("\n");
50
        }
51
        j++;
52
    }
53
}
54

55

56

57
void main()
58
{
59
    int btree[16];
60
    int data[10] = {0,5,6,4,8,2,3,7,1,9};
61
    //create a bree
62
    int i;
63
    for(i<=1;i<16;i++) btree = 0;
64

65
    create_tree(btree,data,9);
66
    print_btree(btree,16);
67

68
}
css3旋转
文章来源:http://www.huiyi8.com/css3/xuanzhuan/

二叉树数组实现[C/C++]代码,布布扣,bubuko.com

二叉树数组实现[C/C++]代码

标签:http   com   使用   c++   代码      

原文地址:http://www.cnblogs.com/xrkbgan/p/3782304.html

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