您的位置:首页 > 财经 > 金融 > 数据结构(5.3_1)——二叉树的先中后序遍历

数据结构(5.3_1)——二叉树的先中后序遍历

2024/12/23 0:22:17 来源:https://blog.csdn.net/m0_65240792/article/details/140601959  浏览:    关键词:数据结构(5.3_1)——二叉树的先中后序遍历

先序遍历——左右——前缀表达式

中序遍历——左右——中缀表达式

后序遍历——左右——后缀表达式

二叉树的遍历(手算)

先序遍历代码

 

 

struct ElemType
{int value;
};
//二叉树的结点(链式存储)
typedef struct BiTNode {ElemType data;//数据域struct BiTNode *lchild, * rchild;//左、右孩子指针
}BiTNode,*BiTree;
void visit(BiTree T) {if (T != NULL) { // 确保结点非空printf("%d ", T->data.value); // 打印结点的value}
}
//先序遍历
void PreOrder(BiTree T) {if (T != NULL) {visit(T);//访问根结点PreOrder(T->lchild);//递归遍历左子树PreOrder(T->rchild);//递归遍历右子树}
}

中序遍历代码

struct ElemType
{int value;
};
//二叉树的结点(链式存储)
typedef struct BiTNode {ElemType data;//数据域struct BiTNode *lchild, * rchild;//左、右孩子指针
}BiTNode,*BiTree;
void visit(BiTree T) {if (T != NULL) { // 确保结点非空printf("%d ", T->data.value); // 打印结点的value}
}
//先序遍历
void PreOrder(BiTree T) {if (T != NULL) {PreOrder(T->lchild);//递归遍历左子树visit(T);//访问根结点PreOrder(T->rchild);//递归遍历右子树}
}

后序遍历代码

struct ElemType
{int value;
};
//二叉树的结点(链式存储)
typedef struct BiTNode {ElemType data;//数据域struct BiTNode *lchild, * rchild;//左、右孩子指针
}BiTNode,*BiTree;
void visit(BiTree T) {if (T != NULL) { // 确保结点非空printf("%d ", T->data.value); // 打印结点的value}
}
//先序遍历
void PreOrder(BiTree T) {if (T != NULL) {PreOrder(T->lchild);//递归遍历左子树PreOrder(T->rchild);//递归遍历右子树visit(T);//访问根结点}
}

总结:

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com