• 大小: 3KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: C/C++
  • 标签: 二叉树  

资源简介

#include"stdio.h" #include"stdlib.h" #define maxsize 255 typedef struct Binode { char data; struct Binode *lchild; struct Binode *rchild; }Bitree;

资源截图

代码片段和文件信息

#include“stdio.h“
#include“stdlib.h“
#define maxsize 255
typedef struct Binode
{
    char data;
    struct Binode *lchild;
    struct Binode *rchild;
}Bitree;
Bitree *Creatbitreepre(char *str)
{
    Bitree *bt*stack[maxsize]*p=NULL;
    int top=-1kj=0;
    char ch;
    bt=NULL; ch=str[j];
    while(ch!=‘\0‘)
    {
        switch(ch)
        {
            case ‘(‘:{top++;stack[top]=p;k=1;break;}
            case ‘)‘:{top--;break;}
            case ‘‘:{k=2;break;}
            default:
            {
                p=(Bitree *)malloc(sizeof(Bitree));
                p->data=ch;p->lchild=p->rchild=NULL;
                if(bt==NULL) bt=p;
                else
                {
                    switch(k)
                    {
                        case 1:stack[top]->lchild=p;break;
                        case 2:stack[top]->rchild=p;break;
                    }
                }
            }
        }
        j++;
        ch=str[j];
    }
    return bt;
}
void Outbitree(Bitree *bt)
{
    Bitree *stack[maxsize]*p;
    int level[maxsize][2]topniwidth=4;
    char type;
    if(bt!=NULL)
    {
        top=1;stack[top]=bt;
        level[top][0]=width;level[top][1]=2;
        while(top>0)
        {
            p=stack[top];
            n=level[top][0];
            switch(l

评论

共有 条评论