题解 | #二叉排序树#

二叉排序树

https://www.nowcoder.com/practice/30a0153649304645935c949df7599602

#include <bits/stdc++.h>
#define MAX 100
using namespace std;

typedef struct BiTNode {
    int data;
    struct BiTNode* lchild, *rchild;
} BiTNode, *BiTree;

void BST_INSERT(BiTree& T, int n, int father) {
    if (T == NULL) {
        T = (BiTNode*)malloc(sizeof(BiTNode));
        T->data = n;
        T->lchild = T->rchild = NULL;
        cout << father <<endl;
    } else { //不考虑相等的情况
        if (n < T->data) //小的去左子树
            BST_INSERT(T->lchild, n, T->data);
        else            //大的去右子树
            BST_INSERT(T->rchild, n, T->data);
    }
}


int main() {
    BiTree T = NULL;
    int n, data[MAX];
    cin >> n;
    for (int i = 0; i < n; i++)
        cin >> data[i];

    for (int i = 0; i < n; i++)
        BST_INSERT(T, data[i], -1);
}

全部评论
点赞 回复 分享
发布于 2023-03-05 12:31 广东

相关推荐

04-02 16:49
门头沟学院 Java
_bloodstream_:我也面了科大讯飞,主管面的时候听说急招人优先考虑能尽快实习的,我说忙毕设,后面就一直没消息了
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务