兰州大学-数据结构-命题作业-二叉树(完整答案)
时间:2025-07-11
时间:2025-07-11
兰州大学网络教育学院 数据结构命题作业 二叉树
兰州大学-数据结构-命题作业-二叉树(完整答案)
答案:
第一题
//二叉树结点
typedef struct BiTNode{
//数据
char data;
//左右孩子指针
struct BiTNode *lchild,*rchild;
}BiTNode,*BiTree;
//按前序遍历创建二叉树
int CreateBiTree(BiTree &T){
兰州大学网络教育学院 数据结构命题作业 二叉树
char data;
//按先序次序输入二叉树中结点的值(一个字符),‘#’表示空树scanf("%c",&data);
if(data == '#'){
T = NULL;
}
else{
T = (BiTree)malloc(sizeof(BiTNode));
//生成根结点
T->data = data;
//构造左子树
CreateBiTree(T->lchild);
//构造右子树
CreateBiTree(T->rchild);
}
return 0;
}
//输出
void Visit(BiTree T){
if(T->data != '#'){
printf("%c ",T->data);
}
}
//前序遍历
void PreOrder(BiTree T){
if(T != NULL){
//访问根节点
Visit(T);