二叉排序树
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
typedef struct binary_sort_Tree{
int data;
struct binary_sort_Tree *left,*right;
}BSTNode;
BSTNode *insertBST(BSTNode *root,int num)
{
if(NULL == root)
{
root = (BSTNode *)malloc(sizeof(BSTNode));
root->data = num;
root->right = NULL;
root->left = NULL;
}else{
if(num < root->data)
{
root->left = insertBST(root->left,num);
}else{
root->right = insertBST(root->right,num);
}
}
return root;
}
BSTNode *create(BSTNode *root)
{
int num;
while(scanf("%d",&num))
{
root = insertBST(root,num);
}
return root;
}
void visit(BSTNode *root)
{
if(NULL == root) return ;
visit(root->left);
printf(" %d",root->data);
visit(root->right);
}
int main()
{
BSTNode *root = NULL;
root = create(root);
visit(root);
return 0;
}
最后
如果你觉得写的还不错,就关注下公众号呗,关注后,有点小礼物回赠给你。
你可以获得5000+电子书,java,springCloud,adroid,python等各种视频教程,IT类经典书籍,各种软件的安装及破解教程。
希望一块学习,一块进步!