文章

85

粉丝

0

获赞

466

访问

9.4k

头像
二叉树的建立和遍历 题解:
P1109 同济大学机试题
发布于2026年3月5日 20:00
阅读数 153

#include <bits/stdc++.h>
using namespace std;
#define ll long long ;

typedef struct Node {
    char data;
    struct Node *left,*right;
}*Btree;

//先序遍历创建
void CreatBinaryTree(Btree &B) {
    char c;
    cin>>c;
    if (c=='0') B=NULL;
    else {
        B = new Node;
        B->data=c;
        CreatBinaryTree(B->left);
        CreatBinaryTree(B->right);
    }
}

//先序输出
void PreOrder(Btree B) {
    if (B==NULL) return;
    cout<<B->data<<' ';
    PreOrder(B->left);
    PreOrder(B->right);
}

//中序输出
void InOrder(Btree B) {
    if (B==NULL) return;
    InOrder(B->left);
    cout<<B->data<<' ';
    InOrder(B->right);
}

//后序输出
void PostOrder(Btree B) {
    if (B==NULL) return;
    PostOrder(B->left);
    PostOrder(B->right);
    cout<<B->data<<' ';
}

//叶子节点

int CountLeap(Btree B) {
    if (B==NULL) return 0;
    if (B->left==NULL && B...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发