btree.h

来自「一个命令行运算器源代码 用C++写的命令行运算器」· C头文件 代码 · 共 56 行

H
56
字号
#ifndef _Btree_h
#define _Btree_h

#include "node.h"

template<typename T>
class Btree
{
public:
    Btree();
    ~Btree();

    virtual void insert(const T&) = 0;

    node<T>* insertleft(node<T>*, node<T>*);
    node<T>* insertright(node<T>*, node<T>*);

protected:
    virtual node<T>* generate() = 0;
    virtual void destroy(node<T>* ) = 0;

    node<T>* root;
};

template<typename T>
inline Btree<T>::Btree()
{
//    root = generate();
}

template<typename T>
Btree<T>::~Btree()
{
//    destroy(root);
}

template<typename T>
inline node<T>* Btree<T>::insertleft(node<T>* pre, node<T>* it)
{
    if(pre->left != NULL)
        it->left = pre->left;
    pre->left = it;
    return pre;
}

template<typename T>
inline node<T>* Btree<T>::insertright(node<T>* pre, node<T>* it)
{
    if(pre->right != NULL)
        it->left = pre->right;
    pre->right = it;
    return pre;
}

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?