目录
牛客CM24 最近公共祖先
解析代码
牛客CM24 最近公共祖先
最近公共祖先_牛客题霸_牛客网
解析代码
class LCA {
public:
int getLCA(int a, int b) {
// 左孩 = 父 * 2 + 1,右孩 = 父 * 2 + 2;
// 父 = (孩 - 1) / 2;
// 1 2 3
// int a_f = a , b_f = b;
int a_f = a - 1, b_f = b - 1; // 让其对应平时的下标
while (a_f != b_f)
{
if (a_f > b_f) // 让大的找自己的父结点
{
a_f = (a_f - 1) / 2;
}
else
{
b_f = (b_f - 1) / 2;
}
}
// return a_f;
return a_f + 1;
}
};