The order of a Tree

题意: 给定一个二叉搜索树的插入顺序,要求输出建树之后的前序遍历。

题解: 连续第二天做到二叉搜索树了,真的吹爆这个算法,从二叉树啥也不懂,到简单搜索树直接秒杀,全靠这个模板。

#include<bits/stdc++.h>
using namespace std;int n, x;
vector<int> ans;
void build(vector<int> tree) {if(tree.size() == 0)  return ;vector<int> left, right;for(int i = 1; i < tree.size(); i++) {if(tree[i] > tree[0])  right.push_back(tree[i]);else                   left.push_back(tree[i]);}ans.push_back(tree[0]);    //记录下根节点,然后按照左子树、右子树的顺序递归,按顺序输出ans中的内容即是前序遍历build(left);  //针对左子树进行建树build(right);    //针对右子树进行建树
}
int main() {while(~scanf("%d", &n)) {ans.clear();vector<int> tree;for(int i = 0; i < n; i++) {scanf("%d", &x);tree.push_back(x);}build(tree);for(int i = 0; i < ans.size() - 1; i++) printf("%d ", ans[i]);printf("%d\n", ans[ans.size() - 1]);}return 0;
}

HDU3999 The order of a Tree【二叉搜索树 + 前序遍历】相关推荐

  1. 【CCCC】L2-004 这是二叉搜索树吗? (25分),二叉搜索树前序遍历

    problem L2-004 这是二叉搜索树吗? (25分) 一棵二叉搜索树可被递归地定义为具有下列性质的二叉树:对于任一结点, 其左子树中所有结点的键值小于该结点的键值: 其右子树中所有结点的键值大 ...

  2. 利用C语言实现二叉搜索树的遍历、查找、插入、删除

    IDE:codebloks,编译器:gcc5.1.0 二叉搜索树和我们通常的二叉树还是有一定的区别,顾名思义,一颗二叉搜索树以一颗二叉树来组织,其中每一个结点就是一个对象.除了key(关键字)和卫星数 ...

  3. PAT甲级——1099 Build A Binary Search Tree (二叉搜索树)

    本文同步发布在CSDN:https://blog.csdn.net/weixin_44385565/article/details/90701125 1099 Build A Binary Searc ...

  4. 【基础知识】 之 Binary Search Tree 二叉搜索树

    前言 这个系列是毕业找工作的复习笔记,希望可以和广大正准备毕业的童鞋一起打牢基础,迎接各种笔试--为了应付中英文笔试,关键词都用英文进行标注,这样就不怕面对英文题目了.之所以开始这一系列是因为之前在参 ...

  5. leetcode 98. 验证二叉搜索树 递归遍历左右子树和中序遍历 c语言解法

    如题: 给定一个二叉树,判断其是否是一个有效的二叉搜索树. 假设一个二叉搜索树具有如下特征: 节点的左子树只包含小于当前节点的数. 节点的右子树只包含大于当前节点的数. 所有左子树和右子树自身必须也是 ...

  6. 刷题笔记(1) 一个序列是否为二叉搜索树的遍历结果

    1.输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. 二叉搜索树:具体定义:https://blog.csdn ...

  7. B-树(B-Tree)与二叉搜索树(BST):讲讲数据库和文件系统背后的原理(读写比较大块数据的存储系统数据结构与算法原理)...

    人类总喜欢发明创造一些新名词(比如说,简写/缩写/简称什么的),并通过这些名词把人群分成了三六九等.弄到最后,把自己都绕晕了. 你看,首先就是,B树,不要与Binary tree或B+tree混淆. ...

  8. 数据结构二叉排序树建立_数据结构101什么是二叉搜索树

    数据结构二叉排序树建立 In everyday life, we need to find things or make decisions, and one way to make that pro ...

  9. b+树时间复杂度_深入理解数据库系统之存储存引擎(二叉搜索树)

    B树是数据库存储引擎使用的最多的存储结构之一.许多开源数据库系统也都大量使B用树作为存储结构,多年来已经证明它们能够胜任大多数使用场景. 早在1971年鲁道夫·拜尔(Rudolph Bayer)和爱德 ...

最新文章

  1. Java多线程安全问题解决的两种方式代码案例
  2. 我学到的5件事,指导2,500名有抱负的开发人员
  3. foreach 和 for 循环的区别
  4. 什么是大数据平台和大数据
  5. idea设置java环境变量_idea的环境变量怎样设置
  6. excel常用函数公式及技巧_Excel公式使用技巧大全
  7. 数控dda法直线插补程序c语言,DDA法直线插补
  8. DLL load failed while importing _swigfaiss: 找不到指定的模块。
  9. 二进制数转换为十进制数c语言程序代码,任意二进制数转换为十进制数
  10. keras简单的实际入门教程
  11. Thread优先级之优先级别
  12. 研究生项目狗自救指南
  13. 1.Hue 中运行oozie工作流执行spark 报错 local class incompatible
  14. python 中的 sys.stdin ,sys.stdout 和sys.stderr
  15. 微信小程序打开微信公众号中的文章实战教程
  16. 数字信号处理吴镇扬第三版课后题答案
  17. 求伪逆的五种方法比较
  18. java舞会配对程序_校会·活动 | 舞会流程及配对方式大揭秘
  19. C语言时钟信号设计原理,单片机时钟电路原理图
  20. 微信小程序裁剪图片大小(有效果图)

热门文章

  1. webpack 如何优雅的使用tree-shaking(摇树优化)
  2. 8.0服务器维护时间,08月13日服务器维护更新公告
  3. 奇偶校验码 ,奇偶校验码检错原理,奇偶校验码的缺点。
  4. react+antd的Upload 通过证书 上传大文件视频至oss(上传视频)
  5. iview-admin使用Iconfont-阿里巴巴矢量图标库的时候,多个Iconfont合并如何使用
  6. 爱贝参加第十二届中国产学研合作创新大会
  7. css3实现漂亮的倒影效果
  8. Samsung/三星G3502C(GALAXY Trend 3) root教程_方法
  9. G‑Core Labs CDN: 一家被忽略的高性能CDN服务商
  10. 不属于MySQL常见的索引类型_Mysql常见的索引类型