首页 > 代码库 > [剑指Offer] 23.二叉搜索树的后序遍历
[剑指Offer] 23.二叉搜索树的后序遍历
【思路】BST的后序序列的合法序列是,对于一个序列S,最后一个元素是x (也就是根),如果去掉最后一个元素的序列为T,那么T满足:T可以分成两段,前一段(左子树)小于x,后一段(右子树)大于x,且这两段(子树)都是合法的后序序列。下面是在讨论中看到的一份代码,已学习到。
1 class Solution { 2 public: 3 bool VerifySquenceOfBST(vector<int> sequence) { 4 int size = sequence.size(); 5 if(size == 0) 6 return false; 7 int i = 0; 8 while(--size){ 9 while(sequence[i ++] < sequence[size]); 10 while(sequence[i ++] > sequence[size]); 11 if(i < size) 12 return false; 13 i = 0; 14 } 15 return true; 16 } 17 };
[剑指Offer] 23.二叉搜索树的后序遍历
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。