您的位置:首页 > 其它

中序线索化二叉树:递归实现

2016-09-22 11:35 218 查看
template<class T>

void ThreadBinaryTree<T>::InThread(ThreadBinaryTreeNode<T>* root,ThreadBinaryTreeNode<T>* &pre){

if(root==NULL)

return;

//中序线索化左子树

InThread(root->leftchild(),pre);  //左路下降递归

if(root->leftchild()==NULL){

//建立前驱线索

root->left=pre;  //把pre变量内容赋给左边线索

root->iTag=1;  //属性设为线索属性

}

if((pre))&&(pre->rightchild()==NULL)){

//建立后继线索

pre->right=root;

pre->rTag=1;

}

pre=root;

InThread(root->rightchild(),pre);//中序线索化右子树

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  二叉树
相关文章推荐