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

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

/** * 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。 * 如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 */package javabasic.nowcoder;/**思路:已知条件:后序序列最后一个值为root;二叉搜索树左子树值都比root小,右子树值都比root大。1、确定root;2、遍历序列(除去root结点),找到第一个大于root的位置,则该位置左边为左子树,右边为右子树;3、遍历右子树,若发现有小于root的值,则直接返回false;4、分别判断左子树和右子树是否仍是二叉搜索树(即递归步骤1、2、3)。 */public class Main28 {	public boolean VerifySquenceOfBST(int [] sequence) {		if(sequence.length==0)	return false;		if(sequence.length==1)	return true;        return judge(sequence, 0, sequence.length-1);    }	/**	 * @param sequence	 * @param i	 * @param j	 * @return	 */	private boolean judge(int[] sequence, int star, int end) {		if(star>end) {			return true;		}		int i=star;		while(sequence[i]

  

转载于:https://www.cnblogs.com/zhaohuan1996/p/9049962.html

你可能感兴趣的文章
java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory
查看>>
Vue学习之路第十七篇:全局过滤器的使用
查看>>
Http传输Header解释
查看>>
BZOJ4893 项链分赃
查看>>
PIE SDK算法的异步调用
查看>>
deque双向队列
查看>>
Java 环境变量设置
查看>>
Android启动过程_大致流程
查看>>
这么说吧,java线程池的实现原理其实很简单
查看>>
Windows Phone 7, Hammock, OAuth and Sina Weibo’s API
查看>>
【MBN简介】
查看>>
Java进程CPU高
查看>>
Java回调机制
查看>>
个人作业4-alpha阶段个人总结
查看>>
搜索目录下 匹配文件中 最新的文件 路径
查看>>
博客园自定义主题 皮肤
查看>>
jquery功能实现总结
查看>>
关于js(七)------------JS常见的dom操作api
查看>>
JavaScript基础---理解闭包问题
查看>>
Linux 内核中的 Device Mapper 机制
查看>>