二叉树排序树的创建

Posted lu20191227

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉树排序树的创建相关的知识,希望对你有一定的参考价值。

 

 

 _declspec(dllexport)    Node::TNODE* create_binary_sort_tree(Node::RECORD TEST[], int maxlen);             //二叉排序树的创建

Node::TNODE* tree::create_binary_sort_tree(Node::RECORD TEST[], int maxlen)                   //二叉排序树的创建
{
    int i;
    Node::TNODE *head, *s, *p, *q;
    head = NULL;
    for (i = 0; i < maxlen; i++)
    {

        s = (Node::TNODE*)malloc(sizeof(Node::TNODE));
        s->lchild = NULL;
        s->rchild = NULL;
        s->data = TEST[i].k;
        if (head == NULL)
            head = s;
        else
        {
            p = head;
            q = p;
            while (p != NULL)
            {
                q = p;
                if (p->data > s->data)
                    p = p->lchild;
                else
                    p = p->rchild;
            }
            if (q->data > s->data)
                q->lchild = s;
            else
                q->rchild = s;
        }
    }
        return head;

以上是关于二叉树排序树的创建的主要内容,如果未能解决你的问题,请参考以下文章

找一个Java程序:关于二叉树的建立和排序

二叉树排序树的创建

java学习-排序二叉树

在java中构建未排序二叉树的最有效方法是啥?

排序二叉树,平衡二叉树和红黑树的概念以及相关的操作讲解

数据结构二叉树的基础操作( 1.创建二叉树2.先序遍历3.中序排序4.后序遍历 5.层序遍历6. 统计节点的数目 7.交换左右子树 8.计算并输出该二叉树的深度)