zoukankan      html  css  js  c++  java
  • AVL树和伸展树的比较

     
      AVL树 伸展树
    进行方式 每次插入进行旋转,保证每个节点的子树高度相差最多为1(根节点为0)
    每次检索某个节点,进行旋转,保证可能经常需要检索的节点深度不为logN,
    平均检索M次的平均时间为MlogN
    单旋转
    插入位置和最近不平衡结点成一字型,
    对插入位置的父节点进行单旋转
    插入位置和根节点距离为1
    对根节点进行单旋转
    双旋转
    插入位置和最近不平衡位置成之字型,
    先对插入位置的父节点进行单旋转
    在对祖父节点(不平衡结点)进行单旋转
    插入位置与祖父节点成一字型,进行同向双旋转
    第一次旋转,针对插入位置的父节点
    第二次旋转,针对插入位置的祖父节点(一次旋转后,当前插入元素的父节点)
    插入位置与祖父节点成一字型,进行反向双旋转
    第一次旋转,针对插入位置的父节点
    第二次旋转,针对插入位置的祖父节点(一次旋转后,当前插入元素的父节点)
  • 相关阅读:
    pecl install swoole 安装php扩展swoole
    RBAC
    mysql数据类型
    ES6——Proxy的this问题
    ES6——Proxy实现链式操作
    ES6——Symbol内置值
    ES6——yield例子
    ES6——Generator的next()方法
    ES6——Thunkify用法
    Linux学习day1
  • 原文地址:https://www.cnblogs.com/anzhi/p/7536298.html
Copyright © 2011-2022 走看看