首页 > 其他 > 详细

23 二叉树操作

时间:2020-06-05 23:01:54      阅读:53      评论:0      收藏:0      [点我收藏+]
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#define  NOINFO  -1

typedef struct node
{
    int data;
    struct TNode* L;
    struct TNode* R;
}Node, * PNode;

typedef PNode BinTree;

BinTree  CreatBintree();
bool IsEmpty(BinTree BT);
PreTraverse(BinTree BT);   //先序遍历
//InTraverse(BinTree BT);     //中序遍历
//PosTraverse(BinTree BT);  //中序遍历
//LeTraverse(BinTree BT);  //层序遍历



main() {

    BinTree BTree;
    BTree = CreatBintree();
    IsEmpty(BTree);
    PreTraverse(BTree);


}
BinTree  CreatBintree() {
    int data = NOINFO;

    BinTree BT = (BinTree)malloc(sizeof(Node));
    BT->data = data;
    BT->L = NULL;
    BT->R = NULL;

    return BT;

}

bool IsEmpty(BinTree BT) {
    if (BT->L == NULL && BT->R == NULL)
        return true;
    else
        return false;
}

PreTraverse(BinTree BT) {
    if (IsEmpty(BT))
        printf("BinTree is empty!");
    else
    {
        if (BT) {
            printf("%d", BT->data);
            PreTraverse(BT->L);
            PreTraverse(BT->R);
        }

    }


}

 

23 二叉树操作

原文:https://www.cnblogs.com/abel2020/p/13052272.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!