十一周 项目一 二叉树算法验证(2-3)

来源:互联网 发布:公司取名 知乎 编辑:程序博客网 时间:2024/05/20 07:20
/*    *Copyright (c)2015, 烟台大学计算机与控制工程学院    *All rights reserved.    *文件名称:Graph.cpp    *作    者:苏凯祺    *完成日期:2014年12月18号    *版 本 号:v1.0    *问题描述:(2)二叉树构造算法的验证3.由顺序存储结构转为二叉链存储结构*btreee.h见算法库*/  #include <stdio.h>#include <malloc.h>#include "btree.h"#define N 30typedef ElemType SqBTree[N];BTNode *trans(SqBTree a,int i){    BTNode *b;    if (i>N)        return(NULL);    if (a[i]=='#')        return(NULL);           //当节点不存在时返回NULL    b=(BTNode *)malloc(sizeof(BTNode)); //创建根节点    b->data=a[i];    b->lchild=trans(a,2*i);                 //递归创建左子树    b->rchild=trans(a,2*i+1);               //递归创建右子树    return(b);                              //返回根节点}int main(){    BTNode *b;    ElemType s[]="0ABCD#EF#G####################";    b=trans(s,1);    printf("b:");    DispBTNode(b);    printf("\n");    return 0;}

运行结果:


0 0