判断一个数列是不是搜索二叉树后续遍历输出的结果

本文探讨了如何通过遍历的方式高效地构建二叉搜索树,并对比了二分法与直接遍历两种方法。提出了即使在非法情况下也可以通过中序遍历来验证树的有效性。

剑平面阿里被问到这个,刚开始画了下看有什么性质,乱蒙了几个都被推翻了,初始感觉就是要O(n)的,因为印象中BST的构树都可以O(nlogn)搞定。然后剑平说最后一个数肯定是根节点,一下反应过来了,就是二分出间隔点然后两边递归判断,不过这好像还是构树的思路,可以把整棵树构造出来。然后剑平说不是二分,直接遍历。不科学啊,明显的二分,然后去网上搜一下,都是遍历的,O(n^2)的吧。想了想,二分是当做合法的情况来构树的,不合法怎么判断?构造出搜索二叉树后中序遍历一下不就行了么,妥妥的O(nlogn)吧。

转载于:https://www.cnblogs.com/seen1020/p/4445616.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值