首页 > 其他分享 >Splay学习笔记

Splay学习笔记

时间:2023-01-17 14:35:52浏览次数:37  
标签:学习 log BST 笔记 二叉 Splay 查找 节点

看了半天的 Splay 都没看懂

前情提要

本博客只适用于本蒟蒻复习 Splay ,神犇勿伤。

Splay简介

Splay 树, 或 伸展树,是一种平衡二叉查找树,它通过 Splay/伸展操作 不断将某个节点旋转到根节点,使得整棵树仍然满足二叉查找树的性质,能够在均摊 \(O(\log N)\) 时间内完成插入,查找和删除操作,并且保持平衡而不至于退化为链。

---摘自 OI Wiki.

Splay 树,是一种二叉搜索树(BST),可以在保证BST的性质的情况下实现相较于 \(O(n)\) 暴力更为优化的 \(O(\log N)\) 操作。

那么现在问题来了,什么是 BST ?先上个图:

标签:学习,log,BST,笔记,二叉,Splay,查找,节点
From: https://www.cnblogs.com/mukar/p/17057721.html

相关文章

  • 学习TypeScript 加餐环节
    ​​object​​​、​​Object​​​ 以及​​{}这三个类型大家可能不太理解​​1.​​Object​​ ​​Object​​​类型是所有​​Object​​类的实例的类型。由以下......
  • 学习Vue3 第三十三章(css Style完整新特性)上一章已经讲过了:deep(),其实还有两个选择器
    上一章已经讲过了:deep(),其实还有两个选择器可以补充1.插槽选择器A组件定义一个插槽<template><div>我是插槽<slot></slot></div></template><sc......
  • 学习Vue3 第二十九章(Vue3定义全局函数和变量)
    globalProperties由于Vue3没有Prototype属性使用app.config.globalProperties代替然后去定义变量和函数Vue2//之前(Vue2.x)Vue.prototype.$http=()=>{}Vue3//......
  • 学习Vue3 第三十一章(了解UI库ElementUI,AntDesigin等)
    vue作为一款深受广大群众以及尤大崇拜者的喜欢,特此列出在github上开源的vue优秀的UI组件库供大家参考这几套框架主要用于后台管理系统和移动端的制作,方便开发者快速开发Elem......
  • Portainer笔记-安装
    新建数据卷[root@VM-24-9-centos~]#dockervolumecreateportainer_data拉取Portainer镜像[root@VM-24-9-centos~]#dockerpullportainer/portainer-ceUsingde......
  • Docker笔记-容器镜像导入导出
    镜像导入导出导出镜像dockersave镜像id>镜像名称.tar导入镜像dockersave<镜像名称.tar容器导入导出导出容器dockerexport容器id>容器名称.tar导入镜......
  • Prometheus笔记-Grafana可视化
    Grafana官网下载Grafana[root@VM-24-9-centosPrometheus_server]#wgethttps://dl.grafana.com/oss/release/grafana-9.3.2.linux-amd64.tar.gz安装Grafana[root@VM......
  • 学习TypeScrip9(元组类型)
    如果需要一个固定大小的不同类型值的集合,我们需要使用元组。 元组就是数组的变种元组(Tuple)是固定数量的不同类型的元素的组合。元组与集合的不同之处在于,元组中的元素类型......
  • Prometheus笔记-安装blackbox_exporter
    BlackboxExporter是Prometheus社区提供的官方黑盒监控解决方案,其允许用户通过:HTTP、HTTPS、DNS、TCP以及ICMP 的方式对网络进行探测。我们可以利用这个exporter定时访问......
  • 学习TypeScrip7(内置对象)
    JavaScript中有很多​​内置对象​​,它们可以直接在TypeScript中当做定义好了的类型。ECMAScript的内置对象​​Boolean​​、Number、​​string​​、​​RegExp​​......