?{
? if(*iter1 == *iter2)
? ?pLast = *iter1;
? else
? ?break;
? iter1++;
? iter2++;
?}
?return pLast;
}
TreeNode *GetLastCommonParent(TreeNode *pRoot , TreeNode *pNode1 , TreeNode *pNode2)
{
?if(pRoot == NULL || pNode1 == NULL || pNode2 == NULL)
? return? NULL;
?vector
?GetNodePath(pRoot , pNode1 , path1);
?vector
?GetNodePath(pRoot , pNode2 , path2);
?return GetLastCommonNode(path1 , path2);
}
?
?