zoukankan      html  css  js  c++  java
  • 查找二叉树

      查找二叉树,有成二叉排序树。一颗查找二叉树,或是一棵空树,或者满足以下递归条件:

        1. 查找树的左、右子树各是一棵查找树;

        2. 若查找树的左子树非空,则其左子树上的各节点值均小于根节点的值;

        3. 若查找树的右子树非空,则其右子树上的各节点值均大于根节点的值;

    查找二叉树的基本操作

      插入结点:

      1. 如果相同键值的结点已在查找二叉树中,则不再插入;

      2. 如果查找二叉树为空树,则以新结点为查找二叉树;

      3. 将要插入结点的键值与插入后的父节点的键值比较,就能确定新结点是父结点的左子结点还是右子节点,并进行相应插入。

      删除结点:

        1. 若待删除节点p是叶子节点,则直接删除该节点;

        2. 若待删除节点p只有一个字节点,则将这个子节点与待删除节点的父节点直接连接,然后删除节点p;

        3. 若带删除的结点p有两个子节点,则在其左子树上,用中序遍历寻找关键之最大的节点s,用节点s的值代替节点p的值,然后删除结点s,结点s必属于上述两种情况之一。

      

  • 相关阅读:
    [Vue]axios的使用
    Handler和Thread线程
    Android启动时闪一下黑屏或者白屏
    WebP图片格式
    ThreadLocal
    泛化,实现,依赖,关联(聚合,组合)
    深入解析AsyncTask
    Processes and Application Life Cycle
    深拷贝浅拷贝
    LCS(Longest Common Subsequence)
  • 原文地址:https://www.cnblogs.com/ImaY/p/4303808.html
Copyright © 2011-2022 走看看