树,二叉树

文章介绍了树的基本概念,包括根节点、子树等,并详细阐述了二叉树的定义,二叉树的性质,以及完全二叉树的概念。此外,讨论了链式二叉树的存储结构,特别是二叉链表,并提供了前序、中序和后序遍历二叉树的递归算法。
摘要由CSDN通过智能技术生成

定义:

树是n个节点的有限集合, 当n=0时为空树 ,有且仅有一个称之为根的节点 ,令一颗树为T,除根节点外,可分为 m个互不相交的有限集 ,其中一个集合又是一棵树 称其为T的子树

树的基本术语:

二叉树的定义 :

二叉树的性质 :

二叉树定理 :

完全二叉树 :

 

 

n个节点的二叉链表中,空指针有n+1个

 链式二叉树

储存结构:

typedef char BitreeElemType;
typedef struct __BiNode {
BitreeElemType data;
__BiNode *lchild, *rchild;
} BiNode, *BiTree;

遍历方式(递归)

void InOrder(BiTree T) {
if (!T)
return;
InOrder(T->lchild);
printf("%c ", T->data);
InOrder(T->rchild);
}
void PreOrder(BiTree T) {
if (!T)
return;
printf("%c ", T->data);
PreOrder(T->lchild);
PreOrder(T->rchild);
}
void PostOrder(BiTree T) {
if (!T)
return;
PostOrder(T->lchild);
PostOrder(T->rchild);
printf("%c ", T->data);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值