using namespace std;
template <class T>
struct BinaryTreeNode//定义二叉树的节点
{
BinaryTreeNode(const T& value)
:_value(value)
,_pLeft(NULL)
,_pRight(NULL)
{}
T _value;
BinaryTreeNode<T>* _pLeft;
BinaryTreeNode<T>* _pRight;
};
template<class T>
class BinaryTree//定义二叉树
{
typedef BinaryTreeNode<T> Node;
public:
BinaryTree()
:_pRoot(NULL)
{}
private:
Node* _pRoot;//根节点
};
1.先序遍历
根节点—->左子树—->右子树
void PreOrder_Nor()
{
cout<<”PreOrder_Nor”<
void InOrder_Nor1()
{
cout<<"InOrder_Nor1"<<endl;
if(_pRoot == NULL)
return ;
stack<Node*> s;
Node* pCur = _pRoot;
while(pCur |