我在这里读到了一个名为验证二叉搜索树的访谈练习.
这究竟是如何工作的?在验证二叉搜索树时会有什么需要?我写了一个基本的搜索树,但从未听说过这个概念.
下面的代码来自查找二进制树是否为二进制搜索树.
bool IsValidBST(BinaryNode node, int MIN, int MAX)
{
if(node == null)
return true;
if(node.element > MIN
&& node.element < MAX
&& IsValidBST(node.left,MIN,node.element)
&& IsValidBST(node.right,node.element,MAX))
return true;
else
return false;
}
Run Code Online (Sandbox Code Playgroud)
如何MIN和MAX在这里被使用?它们代表什么价值?为什么他们需要通过该功能?