数据结构--线索树

线索树的构造思路
(1)首先构造出一棵二叉树
(2)然后将二叉树线索化(1.中序2.先序3.后序)

关于二叉树的建立(方法之一)
(1)用一个字符串来表示二叉树上的元素,其中’#’代表无效结点,然后可以根据自己的需求来调整字符串顺序
char *str = “ABC##DE##F##G#H##”;

希望构建中序遍历是
C B E D F A G H
先序遍历
A B C D E F GH 的二叉树
二叉树建立函数

BinaryNode * CreateTree(char *& str)
{
    BinaryNode* s = NULL;
    if (*str != '#')
    {
        s = (BinaryNode*)malloc(sizeof(BinaryNode));
        s->data = *str;
        s->left = 0;
        s->right = 0;

        s->leftNode = CreateTree(++str);
        s->rightNode = CreateTree(++str);
    }
    return s;
}

二叉树成功建立了以后是线索化
中序线索化

 
 

你可能感兴趣的:(数据结构,数据结构,c语言,二叉树,线索二叉树)