牛小飞《数据结构》4.3二叉查找树.pptVIP

  • 6
  • 0
  • 约6.25千字
  • 约 43页
  • 2017-05-30 发布于浙江
  • 举报
2.被删除的节点只有左子树或右子树 2 8 1 3 删除节点4 4 6 remove方法 在欲删除节点的父节点上调整链,使其指向欲删节点的左(右)子树。 删除策略: t=(t.left!=null)?t.left:t.right 1)这种删除节点的操作不会破坏二叉查找树的特性 2)其双亲节点的相应指针域的值改为 “指向被删除节点的左子树或右子树”。 remove方法 2.被删除的节点只有左子树或右子树 3.被删除的节点即有左子树也有右子树 2 8 1 3 删除节点2 5 6 remove方法 删除策略: 4 用其右子树的最小数据findMin(t.right)代替该节点的数据,并递归地删除那个节点。 3 t.element=findMin(t.right).element; t.right=remove(t.element,t.right); 为了保持二叉查找树的特性,以其右子树的最小元素(findMin(t.right))替代之,然后再删除这个最小元素。 remove方法 3.被删除的节点即有左子树也有右子树 算法描述如下: remove方法 public void remove(AnyType x){ // 若二叉查找树 T 中存在项等于x 的数据元素, //则删除该数据元素节点,否则返回null root=remove(x,root); } remo

文档评论(0)

1亿VIP精品文档

相关文档