思路

前一部分的元素每一个一定都是小于最后一个元素的,后一部分的元素每一个一定都是大于最后一个元素的。天然用递归去做。
我的做法是每次开始的时候用遍历的方法记录第一个比最后元素大的位置。

代码

class Solution {public:bool VerifySquenceOfBST(vector<int> sequence) {if(sequence.size() == 0) return false;return reOrder(sequence, 0, sequence.size()-1);}bool reOrder(vector<int>& sequence, int start, int end){if(end <= start) return true;int flag = 0;int mid = -1;for(auto i = start; i < end; i++){if(sequence[i] > sequence[end] &&  flag == 0){mid = i;flag = 1;}else if(sequence[i] < sequence[end] && flag == 1){return false;}}return reOrder(sequence,start, mid-1) && reOrder(sequence, mid, end-1);}
};

二叉搜索树的后序遍历相关推荐

  1. 【剑指Offer】23、二叉搜索树的后序遍历序列

      题目描述:   输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同.   解题思路:   对于后续遍历序列,序 ...

  2. 剑指offer:面试题33. 二叉搜索树的后序遍历序列

    题目:二叉搜索树的后序遍历序列 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果.如果是则返回 true,否则返回 false.假设输入的数组的任意两个数字都互不相同. 参考以下这颗二叉搜 ...

  3. [剑指offer] 二叉搜索树的后序遍历序列

    二叉搜索树的后序遍历序列 P157 题目:输入一个数组,判断这个数组是不是一个二叉搜索树的后序遍历的结果. solution:我们知道后序遍历序列的最后一个item是根节点,如果确实是二叉搜索树的后序 ...

  4. 剑指offer 24:二叉搜索树的后序遍历序列

    题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. 解题思路 二叉搜索数的定义:左节点比根节点小,右节 ...

  5. 剑指OFFER之从二叉搜索树的后序遍历序列(九度OJ1367)

    题目描述: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. 输入: 每个测试案例包括2行: 第一行为1个整数 ...

  6. 剑指offer(Java实现) 二叉搜索树的后序遍历序列

    题目描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个数字都互不相同. 解题思路 先找到右子树的开始位置,然后分别进行左右 ...

  7. 面试题整理7 二叉搜索树的后序遍历序列

    <剑指offer>面试题24: 题目: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则返回true,否则返回false.假设输入的数组的任意两个数字都互不相同. ...

  8. 【超100%解法】剑指 Offer 33. 二叉搜索树的后序遍历序列

    立志用最少的代码做最高效的表达 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果.如果是则返回 true,否则返回 false.假设输入的数组的任意两个数字都互不相同. 示例 1: 输入: ...

  9. 剑指Offer - 九度1367 - 二叉搜索树的后序遍历序列

    剑指Offer - 九度1367 - 二叉搜索树的后序遍历序列2013-11-23 03:16 题目描述: 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出 ...

  10. C#刷剑指Offer | 二叉搜索树的后序遍历序列

    [C#刷题]| 作者 / Edison Zhou 这是EdisonTalk的第289篇原创内容 我们来用之前学到的数据结构知识来刷<剑指Offer>的一些核心题目(精选了其中30+道题目) ...

最新文章

  1. 数据库 sql 语句优化
  2. cad在哪里设置图幅大小_一看就懂!菜鸟也能快速入门CAD,关键掌握这4个诀窍...
  3. openjdk 使用_如何在OpenJDK中使用ECC
  4. OpenCV_09 模版匹配和霍夫变换:霍夫线检测+霍夫圆检测
  5. 详解Nacos的高可用特性(转载)
  6. Flutter 扩展NestedScrollView (二)列表滚动同步解决
  7. intel hd3000 本 在 64位 ubuntu10.04 下 液晶亮度无法调节 的解决之道(亲测)
  8. C# 获取打印机状态
  9. 共阳、共阳数码管编码表
  10. 【牛客练习赛13】 A B C D【康拓展开】 E【DP or 记忆化搜索】 F 【思维】
  11. 怎么拯救一个不大靠谱的数据库系统 (5 不靠谱的前生)
  12. 多智能体协同控制实验平台的研发
  13. 苹果Mac系统设置任何来源安装第三方软件
  14. 动手试试!手把手教你如何适配 iPhone X
  15. 深度学习:维度灾难(Curse Of Dimensionality)
  16. 【专业数据】二.2020~2022年北京交通大学【信息与通信工程】专业复试线/分数线差/计划招生数/复试数/录取数/复试比例/录取率
  17. 编程语言-什么是高级语言?
  18. Android Google Map实例 - 在地图和卫星图之间切换(Android mapview)
  19. unity减少代码量小技巧--空保护扩展
  20. 淘宝新手入门视频教程哪里有?

热门文章

  1. Ubuntu安装python3虚拟环境
  2. Python sorted功能
  3. ubuntu中安装sqldeveloper和JDK 1.7
  4. 1206. 设计跳表
  5. 5-1 duck typing的概念
  6. topaz全家桶中文_apache 开源项目全家桶 2020年12月中文介绍
  7. python 线程锁_Python多线程-线程锁
  8. 计算机毕业设计中用C++实现职工工资管理系统
  9. 【免费毕设】基于jsp的新闻发布系统(论文)
  10. matlab空域图像增强,图像处理的MATLAB实现实验一 空域图像增强.doc