提问者:小点点

在二叉搜索树中求最大和最小元素


我是个编码新手。 今天我学习了二分搜索树,看到了一个在BST中寻找最小和最大元素的任务。 这是我的密码。 我每次都得到“-1”。


共2个答案

匿名用户

对于二叉树,如果总是取最左边的子树,则会找到min元素;如果总是取最右边的子树,则会找到max元素:

min_node = root;
while( min_node.left != NULL ) {
    min_node = min_node.left;
}

max_node = root;
while( max_node.right != NULL ) {
    max_node = max_node.right;
}

匿名用户

在FinMin和FindMax中交换“else if”和“else”语句,您将得到正确的答案。