在 CC 中使用递归搜索二进制搜索树中的值
二叉搜索树(BST)节点的结构:
struct node {
int data;
node * left;
node * right;
}
搜索算法
// Check if a value exists in the tree
bool BSTSearch(node * current, int value)
{
if (current->data == value)
{
return true;
}
else if (current->data < value)
{
if (current->left == NULL)
{
return false;
}
else
{
return BSTSearch(current->left, value);
}
}
else if (current->data > value)
{
if (current->right == NULL)
{
return false;
}
else
{
return BSTSearch(current->right, value);
}
}
}