#include "stdafx.h" #include <iostream> #include <string> using namespace std; //树的节点 struct TreeNode { char element; int childNumbers;//孩子结点的个数 struct TreeNode* child[3];//孩子的数组 TreeNode(){} TreeNode(char ele, int numbers) { element = ele; childNumbers = numbers; for (int i=0; i<3; i++) child[i] = NULL; } //重载赋值运算符 TreeNode& operator = (const TreeNode& other) { if(this == &other) return *this; else { element = other.element; childNumbers = other.childNumbers; for (int i=0; i<3; i++) child[i] = other.child[i]; } } }; //二叉树的结点 typedef struct BTreeNode { char element; BTreeNode *left; BTreeNode *right; BTreeNode(char ele = 0, BTreeNode *lchild = NULL, BTreeNode *rch