Minimum common ancestor algorithm implementation