博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
剑指offer(18)二叉搜索树的后续遍历
阅读量:4541 次
发布时间:2019-06-08

本文共 872 字,大约阅读时间需要 2 分钟。

题目;

  输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。

思路:

  以最后一个节点为根,从头往后找到第一个大于根节点的,接下来判断这个位置到根节点前是否都是大于根节点的数,然后在把这两个部分用上述方式处理。

  

public class Solution {    public boolean VerifySquenceOfBST(int [] sequence) {        if(sequence.length==0)            return false;        if(sequence.length==1)            return true;        return VerifySquenceOfBST(sequence,0,sequence.length-1);    }    private boolean VerifySquenceOfBST(int a[],int start,int end){        if(start==end)            return true;                int root = a[end];        int i = start;        for(;i
root) break; } int j = i; for(;j
0) left = VerifySquenceOfBST(a,0,i-1); boolean right=true; if(i

  = =下次再加上其他解法

转载于:https://www.cnblogs.com/figsprite/p/10478756.html

你可能感兴趣的文章
获取浏览器高宽
查看>>
C++ 智能指针
查看>>
IOS7 position:fixed 定位问题
查看>>
12.伪类选择器与伪元素的应用
查看>>
Oracle存储过程基本语法
查看>>
JS高程第八章 BOM
查看>>
python-vi
查看>>
Unix进程控制
查看>>
DNS解析过程详解
查看>>
51Nod 1181 质数中的质数(质数筛法)
查看>>
并发编程学习总结
查看>>
Xamarin.Android 上中下布局
查看>>
VS Code使用记录
查看>>
locust参数化(数据库取值)
查看>>
Google Protocol Buffers浅析(三)
查看>>
.net core 中使用Google的protoc
查看>>
Spring Cloud和Spring Boot的区别
查看>>
jquery实现图片上传前本地预览
查看>>
C# — 题库答案汇总
查看>>
docker居然需要3.10以上的内核
查看>>