#二叉树的存储,顺序存储:二叉树的顺序存储就是指利用数组对二叉树进行存储。结点的存储位置即数组下标,能够体现结点之间的逻辑关系,比如父结点和孩子结点之间的关系,左右兄弟结点之间的关系等等。
#链式存储
typedef struct TreeNode{
DataType data;
struct TreeNode *left;
struct TreeNode *right;
}
#二叉树的遍历
void visit(TreeNode *root){
printf("%c",root->data);
}
#先序遍历
void preorder(TreeNode *root){
if(root==null){
return;
}
visit(root);
preorder(root->left);
preorder(root->right);
}
#中序遍历
void inorder(TreeNode *root){
if(root==null){
return;
inorder(root->left);
visit(root);
inorder(root->right);
}
}
#后序遍历
void postorder(TreeNode *root){
if(root==null){
return;
}
postorder(root->left);
postorder(root->right);
visit(root);
}