#include<bits/stdc++.h>
using namespace std;
typedef struct BiTNode{
int val;
struct BiTNode *lson,*rson;
}BiTNode,*BiTree;
void Insert(BiTree &T,int key){
if(!T){
T=new BiTNode();
T->val=key;
T->lson=T->rson=NULL;
}
if(key== T->val) return ;
if(key> T->val) Insert(T->rson,key);
if(key< T->val) Insert(T->lson,key);
}
void InorderTraverse(BiTree root){
if(root==NULL) return ;
InorderTraverse(root->lson);
printf("%d ",root->val);
InorderTraverse(root->rson);
}
bool Search(BiTree root ,int val){
if(root==NULL) return false;
if(root->val==val) return true;
if(val< root->val) return Search(root->lson,val);
if(val> root->val) return Search(root->rson,val);
}
int main(){
puts("请问有几个数据?");
int n;scanf("%d",&n);
puts("请依次输入数据:");
BiTNode *root = NULL;
for(int i=1;i<=n;i++){
int t;scanf("%d",&t);
Insert(root,t);
}
puts("中序遍历:"); InorderTraverse(root);puts("");
puts("请问有几个要查找的数据?");int num;scanf("%d",&num);
while(num--){
printf("请输入要查找的数据:");
int op;scanf("%d",&op);
if(Search(root,op)) printf("该节点可以找到。");
else printf("该节点未找到。");
puts("");
}
return 0;
}
【二叉查找树建立】 --- 数据结构作业
原文作者:二叉查找树
原文地址: https://blog.csdn.net/qq_37383726/article/details/78963755
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
原文地址: https://blog.csdn.net/qq_37383726/article/details/78963755
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。