1919 Problem A 二叉排序树
问题 A: 二叉排序树
时间限制: 1 Sec 内存限制: 32 MB
献花: 46 解决: 30
[献花][花圈][TK题库]
题目描述
输入一系列整数,建立二叉排序数,并进行前序,中序,后序遍历。
输入
输入第一行包括一个整数n(1<=n<=100)。接下来的一行包括n个整数。
输出
可能有多组测试数据,对于每组数据,将题目所给数据建立一个二叉排序树,并对二叉排序树进行前序、中序和后序遍历。每种遍历结果输出一行。每行最后一个数据之后有一个空格。
样例输入
1
2
2
8 15
4
21 10 5 39
样例输出
2
2
2
8 15
8 15
15 8
21 10 5 39
5 10 21 39
5 10 39 21
#include <iostream>
#include <algorithm>
#include <cmath>
#include <vector>
#include <queue>
#include <stack>using namespace std;
const int MaxN = 110;typedef struct tnode
{int v;struct tnode * lchild;struct tnode * rchild;
}TNode;void Insert(TNode *&Root,int val)
{if(!Root){Root = new TNode;Root->v = val;Root->lchild = Root->rchild = NULL;return;}if(Root->v == val) return;else if(Root->v > val)return Insert(Root->lchild,val);elsereturn Insert(Root->rchild,val);
}TNode * CreateTree(int Data[],int n)
{TNode * root = NULL;for(int i=0;i<n;++i)Insert(root,Data[i]);return root;
}void DestroyTree(TNode * &Root)
{if(!Root)return;DestroyTree(Root->lchild);DestroyTree(Root->rchild);delete Root;Root = NULL;
}void PreOrder(TNode * root,int &curn,int n)
{if(!root) return;cout << root->v;++curn;if(curn != n) cout << " ";PreOrder(root->lchild,curn,n);PreOrder(root->rchild,curn,n);
}void InOrder(TNode * root,int &curn,int n)
{if(!root) return;InOrder(root->lchild,curn,n);cout << root->v;++curn;if(curn != n) cout << " ";InOrder(root->rchild,curn,n);
}void PostOrder(TNode * root,int &curn,int n)
{if(!root) return;PostOrder(root->lchild,curn,n);PostOrder(root->rchild,curn,n);cout << root->v;++curn;if(curn != n) cout << " ";
}int main()
{
#ifdef _Debug
freopen("data.txt","r+",stdin);
#endifstd::ios::sync_with_stdio(false);int n,seq[MaxN],tmp;while(cin >> n){for(int i=0;i<n;++i)cin >> seq[i];TNode *root = CreateTree(seq,n);tmp = 0;PreOrder(root,tmp,n);cout << endl;tmp = 0;InOrder(root,tmp,n);cout<<endl;tmp = 0;PostOrder(root,tmp,n);cout <<endl;DestroyTree(root);}return 0;
}/**************************************************************Problem: 1919User: SharwenLanguage: C++Result: 升仙Time:1 msMemory:1696 kb
****************************************************************/
1919 Problem A 二叉排序树相关推荐
- 1919 Problem A 二叉排序树
问题 A: 二叉排序树 时间限制: 1 Sec 内存限制: 32 MB 提交: 298 解决: 126 [提交][状态][讨论版][命题人:外部导入] 题目描述 输入一系列整数,建立二叉排序数,并 ...
- codeup墓地目录(算法笔记习题刷题笔记)
在线codeup contest 地址:http://codeup.cn/contest.php Contest100000575 - <算法笔记>3.1小节--入门模拟->简单模拟 ...
- codeup墓地目录
代码内容为原创C++ 在线codeup contest 地址:http://codeup.cn/contest.php Contest100000575 - <算法笔记>3.1小节--入门 ...
- sdut 二叉排序树
二叉排序树 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Discuss Problem Description 二叉排序树的定义 ...
- HDU1273漫步森林
漫步森林 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- 二叉排序树(完整代码)
目录 二叉排序树 1.二叉排序树(代码) P1087 FBI树 (建树) HDU 4707 Pet 二叉排序树 先序遍历:根->左->右 中序遍历:左->根->右 后序遍历:左 ...
- 二叉排序树、AVL树、红黑树、B树、B+树、Hash树、
二叉排序树 1.基本应用 二叉排序树也称为也叫二叉查找树,二叉搜索树, BST. 满足二叉查找树的一般性质,是指一棵空树具有如下性质: 对于二叉树中的任何一个非叶子节点,要求左子节点比当前节点值小,右 ...
- Problem B: 排序二叉树
Problem Description 根据输入的int数组建立一棵二叉排序树,然后根据指令进行相应的操作.指令只有两种Insert x, Delete x.不考虑空树的情况. Insert x 指令 ...
- hdu3999二叉排序树
https://vjudge.net/problem/22959/origin 题意及思路: 构建二叉排序树 并输出它的前序遍历: #include <stdio.h> #include ...
最新文章
- Qt Creator用户界面
- for相关 java_Java学习之for循环相关知识梳理
- Java线程池 / Executor / Callable / Future
- LeetCode7.反转整数
- 数据分析的5层解读,报表仍是有效的落地实践!
- Andrew Ng 如何重拾梦想
- wxpython记录生词GUI程序
- win10局域网文件服务器,win10 局域网文件共享
- spring事务REQUIRED REQUIRES_NEW区别
- Dojo1.11官方教程文档翻译(3.4)Dojo特效
- Android EditText 获得焦点不显示光标
- 深入理解Java虚拟机读书笔记之垃圾收集器与内存分配策略
- 微博+java平台_【基于JavaEE的微博平台设计最终版材料】
- 大促中为什么需要可视化监控大屏?
- 罗云彬:实现水波特效的代码例子
- 有空就学学的实例分割1——Tensorflow2搭建Mask R-CNN实例分割平台
- 如何更改计算机属性里面的配置文件,电脑中如何设置共享文件夹的属性防止被删除...
- 印象中的tcp?你可能一直都理解错了|开发者的必备技能
- jmeter 阶梯式压测
- 虚化背景 - 基于镜头模糊滤镜的深度映射
热门文章
- 阿里云win2016服务器部署jdk+tomcat填坑
- skylake服务器处理器M系列,瞄三大产品线!谈Intel Skylake架构CPU
- Windows——插件:动态主题(轻量级 每日自动换壁纸)
- 何恺明团队新作ViTDet:用于目标检测的视觉Transformer主干网络
- python使用文字识别读取图片文字
- uni-app 连接逍遥模拟器 安卓模拟器 不显示 找不到 端口映射
- python大数加法、需要ut_对于密钥大小,Python加密数据太长
- html5 图片羽化,课题:html5图像羽化(不规则区域羽化,feather,html5羽化)
- 在window系统上对web项目进行safair兼容测试
- 企业上云规划与云原生环境设计