摘要:
前言 上一节我们学习了splay所能解决的基本问题,这节我来讲一下splay怎么搞区间问题 实现 splay搞区间问题非常简单,比如我们要在区间$l,r$上搞事情,那么我们首先把$l$的前驱旋转到根节点 再把$r$的后继旋转到根节点的右儿子 那么此时根节点的右儿子的左儿子所代表的就是区间$l,r$ 阅读全文
摘要:
题目背景 这是一道经典的Splay模板题——文艺平衡树。 题目描述 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区间,例如原有序序列是5 4 3 2 1,翻转区间是[2,4]的话,结果是5 2 3 4 1 输入输出格式 输入格式: 第一行为n,m n表示 阅读全文
摘要:
题目描述 为了把工厂中高低不等的物品按从低到高排好序,工程师发明了一种排序机械臂。它遵循一个简单的排序规则,第一次操作找到摄低的物品的位置P1,并把左起第一个至P1间的物品反序;第二次找到第二低的物品的位置P2,并把左起第二个至P2间的物品反序...最终所有的物品都会被排好序。 上图给出_个示例,第 阅读全文
摘要:
前言 在 "上一节" 中,我们讲述了Splay的核心操作rotate与splay 本节我会教大家如何用这两个函数实现各种强大的功能 为了方便讲解,我们拿 "这道题" 做例题来慢慢分析 利用splay实现各种功能 首先,我们需要定义一些东西 各种指针 rotate splay 这两个函数就不讲了,前面 阅读全文