将二叉树划分为左右子树,分别对左右子树进行验证是否为二叉树,
根节点的下标为i,
右子树的开端为第一个大于根节点的数字m,
则左边的子树为【0,m-1】,右边的子树的下标为【m,i-1】
(这个不对,右边也是要划分的因为很可能在根节点之前仍有比根节点还要小的数目。
当左边界和右边界重合的时候递归终止表示到底了。
递归:

class Solution {public:bool verifyPostorder(vector<int>& postorder) {return recursion(postorder,0,postorder.size()-1);}bool recursion(vector<int>&postorder,int l,int r){if(l >= r)return true;int i = l;while(postorder[i] < postorder[r]) i++;//确定左子树的范围,int j = i;while(postorder[j] > postorder[r]) j++;//确定右子树的范围,return j == r && recursion(postorder,l,i-1) && recursion(postorder,i,r-1);//j == r是为了验证能否覆盖所有的子叶节点}
};

2021-08-24剑指 Offer 33. 二叉搜索树的后序遍历序列相关推荐

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

    [LeetCode]剑指 Offer 33. 二叉搜索树的后序遍历序列 文章目录 [LeetCode]剑指 Offer 33. 二叉搜索树的后序遍历序列 package offer;public cl ...

  2. 剑指 Offer 33. 二叉搜索树的后序遍历序列

    剑指 Offer 33. 二叉搜索树的后序遍历序列 原始题目链接:https://leetcode-cn.com/problems/er-cha-sou-suo-shu-de-hou-xu-bian- ...

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

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

  4. 二叉排序树的后序遍历序列必然是递增的_剑指offer 33——二叉搜索树的后序遍历序列...

    本题主要在于考察对二叉搜索树和后序遍历的理解. 原题 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果.如果是则返回 true,否则返回 false.假设输入的数组的任意两个数字都互不相同 ...

  5. 【分治】剑指 Offer 33. 二叉搜索树的后序遍历序列

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

  6. 剑指offer之二叉搜索树的后序遍历序列

    剑指offer之二叉搜索树的后序遍历序列 欢迎关注作者博客 简书传送门 题目 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No.假设输入的数组的任意两个 ...

  7. 剑指offer 33. 二叉搜索树的后序遍历

    声明:本系列博客是对何海涛<剑指offer>的关键点总结. 1.问题描述 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历结果,如果是返回true,否则返回false.假设输入的数 ...

  8. 一刷328-递归recur-剑指 Offer 33. 二叉搜索树的后序遍历序列(m)

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

  9. 剑指笔记——33.二叉搜索树的后序遍历序列

    题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果.如果是则输出Yes,否则输出No. 假设输入的数组的任意两个数字都互不相同. 思路:在这个题中要注意是二叉搜索树,二叉搜索树满足左 ...

最新文章

  1. 一台机器上启动多个tomcat
  2. redis中的ziplist
  3. android 图片切换,仿百叶窗效果
  4. win10 mysql5.5无响应_Win10安装mysql5.5安装最后一步停住卡死未响应的解决方法
  5. SAP Digital Asset Management by OpenText for CRM
  6. JavaScript从入门到放弃 -(六)正则表达式
  7. 【英语学习】【WOTD】two-bit 释义/词源/示例
  8. hive3新增資料_Hive表新增字段后,新字段无法写入值问题总结
  9. HIve的概念,发展,历史,部署,入门,加载数据
  10. 如何查看或修改FANUC机器人的系统变量?
  11. 加密数字货币前传:从大卫·乔姆到中本聪
  12. 数据结构——中国邮递员问题
  13. 迅雷“应版权方要求,文件无法下载”完美解决方法!
  14. 被破解毁掉的国产游戏之光
  15. mysql学习记录_秦路天善智能Mysql学习笔记
  16. CF1153D Serval and Rooted Tree
  17. 6_1 系统安全分析与设计
  18. win10使用L2TP连接远程服务器失败的问题
  19. 关于mavon-editor中iframe 的使用 和插入视频、音频的记录
  20. 步进电机驱动器的作用

热门文章

  1. 干货 | 校园-智慧用电解决方案
  2. Python3入门与进阶笔记(五):函数
  3. Grafana初步搭建和使用
  4. linux系统安装xhprof,xhprof扩展安装与使用
  5. 基于nat123 提供的Nat服务,实现内网IP的对外映射(实测Centos 7 自启动)。
  6. 云渲染技术在虚拟仿真应急培训中的应用
  7. 一款不用手动打卡,自动调起钉钉上班打卡的App
  8. 获取GooglePlay下载来源广告数据统计接入同时analytics埋点
  9. 奥维地图数据格式_奥维互动地图导入df文件说明
  10. 超强辅助类插件,神器一样的存在