一.二叉搜索树定义
(1)或为一棵空树
(2)或者是具有以下性质的一棵二叉树
--若左子树不为空,则左子树的结点值均小于根结点的值。
--若右子树不为空,则右子树的结点值均大于根结点的值。
--左右子树均为二叉搜索树。
(a)和(b)均为二叉搜索树,k表示实际存在的结点,d表示虚结点。(k1<k2<k3<k4<k5)
二.最优二叉搜索树定义
应用背景:查询二叉搜索树,指令MEMBER(x,S):若x在S中则返 回”yes”,否则返回”no” ,设有n个实数 a1<a2<…<an构成集合S,考察由MEMBER指令构成的序列,指令MEMBER(x,S)中的x可能是某个ai, 也可能不在S中,把不在S中的数按区间分为n+1类,以b0,b1,…,bn作为每一类数的代表(虚节点)。(如,b0<a1,a1<b1<b2,...即b在a之间)
pi为