在看到数据结构二叉树部分时,想利用C++实现二叉树的建立与遍历操作,在参考部分网上代码后,自己进行了总结,直接贴代码:
首先要实现一个二叉树类,主要操作有三:1.创建二叉链表节点结构体 2.前序建立二叉树 3.三种遍历操作。
class BiTree /*这是一个最基本的二叉树类,所有的操作都在这个类里实现*/
{
public:
BiTree()/*默认构造函数,对根节点进行初始化操作*/
{
root = new BiTreeNode(-1,nullptr,nullptr);
}
struct BiTreeNode /*定义一个基本二叉链表的节点*/
{
int val; //节点值//
BiTreeNode *lchild; //左孩子节点
BiTreeNode *rchild;//右孩子节点
BiTreeNode(int val):val(val),lchild(nullptr),rchild(nullptr) {
}//二叉链表构造函数1,一个参数
BiTreeNode(int val, BiTreeNode *lchild, BiTreeNode *rchild) :val(val), lchild(lchild), rchild(rchild) {
} //二叉链表构造函数2,三个参数
};
/*根据前序创建二叉链表*/
void Create_BiTree