splay旋转模板
2024-08-26 03:35:34
splay旋转模板
void rotate(int x) {
int y=f[x],z=son(x);f[x]=f[y];
if (f[x]) t[f[x]][son(y)]=x;
t[y][z]=t[x][1-z];
if (t[x][1-z]) f[t[x][1-z]]=y;
f[y]=x;t[x][1-z]=y;
}
void splay(int x,int y) {
while (f[x]!=y) {
if (f[f[x]]!=y)
if (son(f[x])==son(x)) rotate(f[x]);
else rotate(x);
rotate(x);
}
if (!y) root=x;
}
最新文章
- android SDK下载及中文API地址
- MAC npm 需要管理员权限问题
- 20145223《Java程序设计》第5周学习总结
- Hibernate入门5持久化对象关系和批量处理技术
- arm-linux-objcopy
- C#跳出循环的几种方法的区别
- HDU 1849 Rabbit and Grass
- php-fpm 相关
- Python之父重回决策层
- TNS-12541: TNS: 无监听程序 解决方案
- Spark学习之wordcount程序
- Laravel 5.5 文档 ] 快速入门 —— 安装配置篇
- [VS] - ";包含了重复的“Content”项。.NET SDK 默认情况下包括你项目中的“Content”项。
- Robot Operating System (ROS)学习笔记---创建简单的机器人模型smartcar
- Architecture.SOLID-Principles
- python-函数中的参数类型和可变参数解析
- npm使用报错解决办法
- MySQL--限制用户使用资源
- [Phonegap+Sencha Touch] 移动开发29 安卓navigator.camera.getPicture得到图片的真实路径
- [ 转载 ] Java开发中的23种设计模式详解(转)