二叉树模版求改进
  • 板块灌水区
  • 楼主fuyanchun
  • 当前回复6
  • 已保存回复6
  • 发布时间2023/9/3 20:55
  • 上次更新2023/11/2 22:48:45
查看原帖
二叉树模版求改进
1013149
fuyanchun楼主2023/9/3 20:55
#include<bits/stdc++.h>
template<typename T>
class tree
{
private:
    struct Node
    {
        T val;
        Node* left;
        Node* right;
        Node(T _val_)
        {
            val=_val_;
        }
    };
    typedef Node* pNode;
    typedef T tree_typename;
    void Preorder(pNode Root)
    {
        if (Root==NULL||Root==0)
            return;
        std::cout<<Root->val<<' ';
        Preorder(Root->left);
        Preorder(Root->right);
    }
    void Inorder(pNode Root)
    {
        if (Root==NULL||Root==0)
            return;
        Inorder(Root->left);
        std::cout<<Root->val<<' ';
        Inorder(Root->right);
    }
    void Postorder(pNode Root)
    {
        if (Root==NULL||Root==0)
            return;
        Postorder(Root->left);
        Postorder(Root->right);
        std::cout<<Root->val<<' ';
        
    }
public:
    pNode __tree__;
    tree()
    {
        __tree__=new Node(NULL);
        __tree__.left==new Node(NULL);
        __tree__.right==new Node(NULL);
    }
    tree(tree_typename val_)
    {
        if (val_==0)
            throw;
        __tree__=new Node(val_);
    }
    pNode build_(tree_typename val_)
    {
        if (val_==0)
            throw;
        return new Node(val_);
    }
    void Preorder()
    {
        Preorder(__tree__);
    }
    void Inorder()
    {
        Inorder(__tree__);
    }
    void Postorder()
    {
        Postorder(__tree__);
    }
    ~tree()
    {
        delete __tree__;
    }
};

有没有dalao能给这个模板加上delete(pNode Root)呀(qwq)
2023/9/3 20:55
加载中...