【发布时间】:2015-04-23 23:18:20
【问题描述】:
在二叉搜索树中,键 x 的前身是键 y,它小于 x,并且没有其他键 z 使得 z 小于 x 或更大 比 y。
给出一个算法的伪代码,它接受一个键 x 并返回 如果 x 是树中最小的键,则前任 y 或 nil。假设二进制 搜索树使用数组 left、right 和 parent 表示。给出伪代码 对于使用的任何辅助功能。
我不太确定如何解决这个问题。但这是我的尝试:
伪代码:
//Takes in key x
BST(x)
{
if ( x < parent[x] )
return nil
if( parent[x] < x )
return parent[x] // parent[x] = y
}
【问题讨论】:
标签: algorithm data-structures binary-search-tree