剑指offer-23.二叉搜索树的后序遍历序列
来源:互联网 发布:mac air qq 远程桌面 编辑:程序博客网 时间:2024/06/03 18:27
题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。
思路:左子树一定比右子树小,因此去掉根后,数字分为left,right两部分,right部分的最后一个数字是右子树的根他也比左子树所有值大,因此我们可以每次只看有子树是否符合条件即可,即使到达了左子树左子树也可以看出由左右子树组成的树还想右子树那样处理对于左子树回到了原问题,对于右子树,左子树的所有值都比右子树的根小可以暂时把他看出右子树的左子树只需看看右子树的右子树是否符合要求即可
class Solution {public: bool VerifySquenceOfBST(vector<int> sequence) { int size = sequence.size(); if (size == 0) return false; int i = 0; while (--size) { while(sequence[i++] < sequence[size]); while(sequence[i++] > sequence[size]); if (i < size) return false; i = 0; } return true; }};
0 0
- 剑指offer:二叉搜索树的后序遍历序列
- 【剑指offer】二叉搜索树的后序遍历序列
- 剑指offer--二叉搜索树的后序遍历序列
- 剑指Offer-->二叉搜索树的后序遍历序列
- 《剑指offer》二叉搜索树的后序遍历序列
- 【剑指Offer】二叉搜索树的后序遍历序列
- 剑指offer--二叉搜索树的后序遍历序列
- 剑指 offer:二叉搜索树的后序遍历序列
- 剑指offer:二叉搜索树的后序遍历序列
- 【剑指offer】二叉搜索树的后序遍历序列
- 二叉搜索树的后序遍历序列||剑指offer
- 剑指offer-二叉搜索树的后序遍历序列
- 剑指offer 二叉搜索树的后序遍历序列
- 剑指offer 二叉搜索树的后序遍历序列
- 剑指offer:二叉搜索树的后序遍历序列
- [剑指offer]二叉搜索树的后序遍历序列
- 《剑指offer》-二叉搜索树的后序遍历序列
- 【剑指offer】二叉搜索树的后序遍历序列
- SpringMVC学习总结(五)——转发和重定向
- android小游戏——2048 核心功能的实现与简单的代码重构(2)
- web.py框架
- IAP 协议
- 使用junit测试初步(1)
- 剑指offer-23.二叉搜索树的后序遍历序列
- 打造vim成为python IDE, 支持自动补全, 定义跳转, 按PEP8规范自动缩进和代码格式化
- POJ-1159-Palindrome(简单dp)
- PHP知识小记
- Codeforces 7E Defining Macros 题解
- 从数据库中导入数据到solr中
- 连接池学习(1)
- ECMASript、DOM、BOM
- 记录一点有意思的东西