以下为代码:
class LCA {
public:
int getLCA(int a, int b) {
int i = 0, j = 0;
int k = 0;
while (k <= a)
{
k = pow(2.0, i + 1);
i++;
}
k = 0;
while (k <= b)
{
k = pow(2.0, j + 1);
j++;
}
while (i>j)
{
a = a / 2;
i--;
}
while (i<j)
{
b = b / 2;
j--;
}
while(a != b)
{
a = a / 2;
b = b / 2;
}
return a;
}
};