C++類實現二叉樹的構建和遍歷:C++類怎麼實現二叉樹的構建和遍歷呢?希望下面的文章對大家有所幫助。
#include
#include
#include
using namespace std;
/*二叉樹的結構體*/
typedef struct BTree
{
int val;
struct BTree *left,*right;
}BTree;
/*二叉樹的類,包含著操作二叉樹的各種方法*/
class Tree
{
public:
BTree *create_node(int level,string pos);
void PreOrder(BTree *t); //先序遍歷
void InOrder(BTree *t); //中序遍歷
void PostOrder(BTree *t); //後序遍歷
BTree *root;
};
/*用先序遍歷的方法遞歸構造一課二叉樹*/
BTree* Tree::create_node(int level,string pos)
{
int data;
BTree *node = new BTree;
cout<<"please enter data:level "<