面试题24:二叉搜索树的后序遍历序列
来源:互联网 发布:python自学视频教程 编辑:程序博客网 时间:2024/06/08 09:24
题目描述
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。
解:
二叉搜索树有序+ 后序遍历特点
class Solution {public: bool VerifySquenceOfBST(vector<int> sequence) { // 假定空序列结果为false if(sequence.empty()) return false; int root = *(sequence.end()-1); int index = 0; while(*(sequence.begin()+index) < root) ++index; int temp = index; while((sequence.begin()+temp) != sequence.end()){ if(*(sequence.begin()+temp) < root) return false; ++temp; } vector<int> left(sequence.begin(), sequence.begin()+index); vector<int> right(sequence.begin()+index, sequence.end()-1); bool result = true; if(!left.empty()) result = VerifySquenceOfBST(left); if(result && !right.empty()) result = VerifySquenceOfBST(right); return result; }};
0 0
- [剑指offer][面试题24]二叉搜索树的后序遍历序列
- 面试题24:二叉搜索树的后序遍历序列
- 【剑指offer】面试题24:二叉搜索树的后序遍历序列
- 剑指Offer:面试题24 二叉搜索树的后序遍历序列
- 面试题24:二叉搜索树的后序遍历序列
- 《剑指Offer》面试题24:二叉搜索树的后序遍历序列
- 剑指offer 面试题24—二叉搜索树的后序遍历序列
- 面试题24:二叉搜索树的后序遍历序列
- 面试题24二叉搜索树的后序遍历序列
- 剑指offer--面试题24:二叉搜索树的后序遍历序列--Java实现
- 【剑指Offer学习】【面试题24:二叉搜索树的后序遍历序列】
- 面试题24_二叉搜索树的后序遍历序列
- 剑指Offer面试题24(Java版):二叉搜索树的后序遍历序列
- 剑指offer_面试题24_二叉搜索树的后序遍历序列(递归)
- 剑指offer面试题24-二叉搜索树的后序遍历序列
- 面试题24二叉搜索树的后序遍历序列cpp
- 面试题24:二叉搜索树的后序遍历序列
- 面试题24:二叉搜索树的后序遍历序列
- 深入理解windows内部原理系列--笔记二
- scp使用
- css3
- 最小生成树问题(prim算法)POJ-1258 Agri-Net
- 阿里云ESC搭建javaWeb环境
- 面试题24:二叉搜索树的后序遍历序列
- 打印输入的单词长度和各个字符出现频数的直方图(水平方向和垂直方向)
- 移动端身份证识别app如何
- Linux三个特殊权限setuid,setgid,stick bit
- QT, THE BETTER ANDROID NDK:Android Studio调用Qt编写的so库
- Linux下OpenCV2.3.0编译
- 怎么样学好游戏编程
- js数组常用的操作方法
- 程序员到架构师,其实没那么难【咕泡学院】