判断数组是不是某二元查找树的后序遍历_Glodon(2)_20160921
来源:互联网 发布:数据库服务端和客户端 编辑:程序博客网 时间:2024/05/16 10:29
题目描述
输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果。如果是返回true,否则返回false。
输入描述:
|| 输入5、7、6、9、11、10、8,由于这一整数序列是如下树的后序遍历结果:
8 / \ 6 10 / \ / \5 7 9 11
输出描述:
|| 返回 true。
输入描述:
|| 输入7、4、6、5,没有哪棵树的后序遍历结果是这个序列。
输出描述:
|| 返回 false。
源代码如下:
bool isPostOrderBST(int squence[], int length){ if(squence == NULL || length <= 0) return false; // 二元查找树的根节点是其后序遍历数组的最后一个元素 int root = squence[length - 1]; // 其左子树的节点一定比根节点的值小 int i = 0; for(; i < length - 1; ++ i) { if(squence[i] > root) break; } // 右子树的节点一定比根节点大 int j = i; for(; j < length - 1; ++ j) { if(squence[j] < root) return false; } // 判断左子树是否为二元查找树 bool left = true; if(i > 0) left = isPostOrderBST(squence, i); // 判断右子树是否为二元查找树 bool right = true; if(i < length - 1) right = verifySquenceOfBST(squence + i, length - i - 1); return (left && right);}
0 0
- 判断数组是不是某二元查找树的后序遍历_Glodon(2)_20160921
- 判断某数组是不是某二元查找树的后序遍历的结果
- 判断该数组是不是某二元查找树的后序遍历的结果
- 判断该数组是不是某二元查找树的后序遍历的结果
- 输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果
- java 输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果
- 输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果
- 【数据结构】【输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果】
- 输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果
- 每天一算法(判断该数组是不是某二元查找树的后序遍历的结果)
- 每天学习一算法系列(9) (输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果)
- 9.判断整数序列是不是二元查找树的后序遍历结果(树)
- 判断整数序列是不是二元查找树的后序遍历结果
- 判断整数序列是不是二元查找树的后序遍历结果
- 判断整数序列是不是二元查找树的后序遍历结果
- 算法讨论(五)--判断整数序列是不是二元查找树的后序遍历结果
- 算法题11 判断整数序列是不是二元查找树的后序遍历结果
- 判断整数序列是不是二元查找树的后序遍历结果
- Linux中Less命令
- ubuntu下安装 kali linux 渗透工具包
- java获取对应字节数的内容
- 访问父类的父类的方法 | 笔试题
- STC单片机之1602显示时钟
- 判断数组是不是某二元查找树的后序遍历_Glodon(2)_20160921
- 终端手动集成cocoaPods
- Flink on Yarn部署
- LeetCode进阶之路(Unique Paths II)
- HTML5学习笔记(一)video的使用
- linux下的ctrl快捷键使用
- css基础知识(二)
- 手工创建数据库
- php邮件发送-phpmailer