题目
描述
对于一颗满二叉排序树深度为 K,结点数为 2^K-1;节点值为 1 至 (2^K-1).
给出任意三个节点的值,输出包含该三个节点的最小子树的根节点值.
输入
输入包括一行,
第一个数为树的深读 K
后三个数为任意三个节点值
输出
输出包含一行,一个数字,为包含该三个节点的最小子树的根节点值
Example
Input
4 10 15 13
Output
12
题解
二分查找
- 二分查找判断当前根节点值 root 与给定三节点中最大与最小值的关系
- 若 root 大于最大值,说明三点在 root 左侧,root 赋值为左子树
- 若 root 小于最小值,说明三点在 root 左侧,root 赋值为右子树
- 若 root 大于等于最小值,小于等于最大值,root 即为所求
1 |
|