当前位置:网站首页>九度 1201 -二叉排序数遍历- 二叉排序树「建议收藏」
九度 1201 -二叉排序数遍历- 二叉排序树「建议收藏」
2022-07-07 18:11:00 【全栈程序员站长】
大家好,又见面了,我是全栈君。
这个是道正统的树构建和遍历题。一開始还想用数组构建取代一下水过去,可是发现不行,仅仅好老老实实的用指针了。二叉排序树和遍历方法假设不清楚定义的话。最好去看看数据结构书复习下。
#include<stdio.h>
struct node{
node *l;
node *r;
int val;
node(int a):val(a),l(NULL),r(NULL){};
};
node *root;
int n;
void qian(node *p){
printf("%d ",p->val);
if(p->l!=NULL)qian(p->l);
if(p->r!=NULL)qian(p->r);
}
void zhong(node *p){
if(p->l!=NULL)zhong(p->l);
printf("%d ",p->val);
if(p->r!=NULL)zhong(p->r);
}
void hou(node *p){
if(p->l!=NULL)hou(p->l);
if(p->r!=NULL)hou(p->r);
printf("%d ",p->val);
}
int main(){
int val;
node *p;
while(~scanf("%d",&n)){
root=NULL;
for(int i=0;i<n;i++){
scanf("%d",&val);
if(i==0){
root=new node(val);
continue;
}
p=root;
while(1){
if(val==p->val)break;
else if(val<p->val){
if(p->l==NULL){
p->l=new node(val);
break;
}
else{
p=p->l;continue;
}
}
else if(val>p->val){
if(p->r==NULL){
p->r=new node(val);
break;
}
else{
p=p->r;continue;
}
}
}
}
qian(root);
printf("\n");
zhong(root);
printf("\n");
hou(root);
printf("\n");
}
return 0;
}
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/116527.html原文链接:https://javaforall.cn
边栏推荐
猜你喜欢
Vulnhub's funfox2
使用高斯Redis实现二级索引
有了ST7008, 蓝牙测试完全拿捏住了
openEuler 有奖捉虫活动,来参与一下?
Open source heavy ware! Chapter 9 the open source project of ylarn causal learning of Yunji datacanvas company will be released soon!
开源重器!九章云极DataCanvas公司YLearn因果学习开源项目即将发布!
数据孤岛是企业数字化转型遇到的第一道险关
Classification automatique des cellules de modules photovoltaïques par défaut dans les images de lecture électronique - notes de lecture de thèse
一. 基础概念
多个线程之间如何协同
随机推荐
Read PG in data warehouse in one article_ stat
大厂经典指针笔试题
ASP. Net learning & ASP's one word
浅尝不辄止系列之试试腾讯云的TUIRoom(晚上有约,未完待续...)
【STL】vector
Ways to improve the utilization of openeuler resources 01: Introduction
Chapter 9 Yunji datacanvas company won the highest honor of the "fifth digital finance innovation competition"!
力扣 1232.缀点成线
关于自身的一些安排
Open source heavy ware! Chapter 9 the open source project of ylarn causal learning of Yunji datacanvas company will be released soon!
JVM GC garbage collection brief
Oracle 存储过程之遍历
【解决】package ‘xxxx‘ is not in GOROOT
Vulnhub tre1
Detailed explanation of Flink parallelism and slot
pom.xml 配置文件标签:dependencies 和 dependencyManagement 区别
力扣 912.排序数组
Force buckle 2315 Statistical asterisk
831. KMP string
Yolov6:yolov6+win10--- train your own dataset