〈新〉二叉排序树.docVIP

  • 7
  • 0
  • 约 11页
  • 2017-01-15 发布于湖北
  • 举报
二叉排序树  1.二叉排序树定义   二叉排序树(Binary Sort Tree)或者是一棵空树;或者是具有下列性质的二叉树:   (1)若左子树不空,则左子树上所有结点的值均小于根结点的值;若右子树不空,则右子树上所有结点的值均大于根结点的值。   (2)左右子树也都是二叉排序树,如图6-2所示。   2.二叉排序树的查找过程   由其定义可见,二叉排序树的查找过程为:   (1)若查找树为空,查找失败。   (2)查找树非空,将给定值key与查找树的根结点关键码比较。   (3)若相等,查找成功,结束查找过程,否则:   ① 当给值key小于根结点关键码,查找将在以左孩子为根的子树上继续进行,转(1)。   ② 当给值key大于根结点关键码,查找将在以右孩子为根的子树上继续进行,转(1)。   3.二叉排序树插入操作和构造一棵二叉排序树   向二叉排序树中插入一个结点的过程:设待插入结点的关键码为key,为将其插入,先要在二叉排序树中进行查找,若查找成功,按二叉排序树定义,该插入结点已存在,不用插入;查找不成功时,则插入之。因此,新插入结点一定是作为叶子结点添加上去的。构造一棵二叉排序树则是逐个插入结点的过程。对于关键码序列为:{63,90,70,55,67,42,98,83,10,45,58},则构造一棵二叉排序树的过程如图6-3所示。   4.二叉排序树删除操作   

文档评论(0)

1亿VIP精品文档

相关文档