原文:学习笔记:平衡树-splay

嗯好的今天我们来谈谈cosplay splay是一种操作,是一种调整二叉排序树的操作,但是它并不会时时刻刻保持一个平衡,因为它会根据每一次操作把需要操作的点旋转到根节点上 所谓二叉排序树,就是满足对树中的任意一个节点,它左子树上的任意一个值比它的值小,右子树上的任意一个值比它的值大的一棵二叉树 至于平衡:是一棵空树或任意节点的左右两个子树的深度差的绝对值不超过 from:百度百科 看图: 不平衡: ...

2018-07-22 18:08 5 3360 推荐指数:

查看详情

普通平衡树学习笔记Splay算法

前言 今天不容易有一天的自由学习时间,当然要用来“学习”。在此记录一下今天学到的最基础的平衡树。 定义 平衡树是二叉搜索和堆合并构成的数据结构,它是一 棵空或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。 这里仅仅说明一下平衡树中的\(Splay\)算法 ...

Sat Jul 11 04:37:00 CST 2020 4 381
平衡树splay讲解

  首先来说是splay是二叉搜索,它可以说是线段和SBT的综合,更可以解决一些二者解决不了的问题,splay几乎所有的操作都是由splay这一操作完成的,在介绍这一操作前我们先介绍几个概念和定义   二叉搜索,即BST(binary search tree),这样的有一个关键字,满足 ...

Mon Dec 09 07:21:00 CST 2013 0 4682
平衡树Splay、fhq Treap)

Splay Splay(伸展)是一种二叉搜索。 其复杂度为均摊\(O(n\log n)\),所以并不可以可持久化。 Splay的核心操作有两个:rotate和splay。 pushup: 上传信息,比如区间和、子树大小... rotate: rotate实现把一个节点\(x\)转到 ...

Tue Dec 03 01:27:00 CST 2019 6 155
[总结] 后缀平衡树学习笔记

定义 后缀平衡树,就是动态的维护后缀数组,可以 \(O(\log n)\) 在末尾插入字符,\(O(\log n)\) 查询 \(rank,SA\)。但是由于是维护的后缀信息,所以插入只能在末尾插入字符(然后转化成在开头加一个字符),相当于添加一个后缀。 在线构造 方法一: 我们需要一种 ...

Tue Jan 15 18:04:00 CST 2019 0 900
后缀平衡树学习笔记

后缀平衡树简介 后缀平衡树是一种动态维护后缀排序的数据结构。 具体而言,它支持在串\(S\)的开头添加/删除一个字符。 前置知识-重量平衡树 重量平衡树保证操作影响的最大子树大小是最坏的或均摊的或期望的\(O(logn)\)。 不采用旋转机制的重量平衡树-替罪羊 替罪羊依赖于一种暴力 ...

Sat Jan 26 16:57:00 CST 2019 0 624
【知识点】平衡树——Treap和Splay

二叉搜索($BST$):一棵带权二叉树,满足左子树的权值均小于根节点的权值,右子树的权值均大于根节点的权值。且左右子树也分别是二叉搜索。(如下) $BST$的作用:维护一个有序数列,支持插入$x$,删除$x$,查询排名为$x$的数,查询$x$的排名,求$x$的前驱后继等操作 ...

Sun Dec 09 00:16:00 CST 2018 5 552
三大平衡树(Treap + Splay + SBT)总结+模板

Treap   核心是 利用随机数的二叉排序的各种操作复杂度平均为O(lgn) Treap模板: View Code 相关题解: POJ 3481 treap POJ 1442 treap POJ 2352 treap Splay ...

Fri Sep 19 00:59:00 CST 2014 1 4851
【BZOJ3223】文艺平衡树Splay

题面 题目描述 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区间是[2,4]的话,结果是5 2 3 4 ...

Sat Sep 23 23:28:00 CST 2017 10 360
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM