和黑人争利益有时不是很明智# Parenting - 为人父母
p*u
1 楼
今天一面,别的都还好。最后一个检查BST是否valid的题。我非常sure我的code是对的
,但对方却不理解,说没check root大于 left的right。我试着run个例子给她,却又没有足够的时间。大家说这种情况怎
么办?要是就这样fail的话,我真的觉得太不公平了。
这是面试时google docs里的code
bool isValidBST(node * r, int upp, int lower)// input
{
if ( !r ) return true;
if ((r->data< lower) || (r->data > upper)) return false;
if ( ! isValidBST( r->left, r->data, lower))//3 as upper when call l1,
(l1 3, lower) (R2, 3. L2)
return false;
if (! isValidBST(r->right, upp, r->data))
return false;
return true;
}
,但对方却不理解,说没check root大于 left的right。我试着run个例子给她,却又没有足够的时间。大家说这种情况怎
么办?要是就这样fail的话,我真的觉得太不公平了。
这是面试时google docs里的code
bool isValidBST(node * r, int upp, int lower)// input
{
if ( !r ) return true;
if ((r->data< lower) || (r->data > upper)) return false;
if ( ! isValidBST( r->left, r->data, lower))//3 as upper when call l1,
(l1 3, lower) (R2, 3. L2)
return false;
if (! isValidBST(r->right, upp, r->data))
return false;
return true;
}