BST

作者: gyDBD | 来源:发表于2018-02-10 08:49 被阅读0次

    BST的优秀性质!

    All the sub-tree are BST

    All elements in left sub-tree is small than root

    All elements in Right sub-tree is larger than root

    If we do InOrder traversal, the result of BST is a sorted array

    find:

    十分简单,往左走往右走

    加一个点,如同搜索,只是要注意留住父亲的位子

    删除我们总是要保证仍旧满足Inorder是升序!

    删除节点的思路比较难,首先要定位到那个地方,然后分三种情况

    如果左右都Null,也就是说明他是个叶子,那么我们可以直接删除

    如果左右有一个是Null,那我们那就用另一边来顶替他的位子

    如果左右都不是Null,那我们得找到左子树的最右下角的树来替换,但是注意只是值换掉,而不是整个点搬上去,树的结构并不会大变。注意被替换掉的数,也要进行删除的,所以说存在不能一直走下去,要保留原来的点的父亲在!所以是while(node.right.right!=null)!

    相关文章

      网友评论

          本文标题:BST

          本文链接:https://www.haomeiwen.com/subject/ukaxtftx.html