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;
}

最新文章

  1. android SDK下载及中文API地址
  2. MAC npm 需要管理员权限问题
  3. 20145223《Java程序设计》第5周学习总结
  4. Hibernate入门5持久化对象关系和批量处理技术
  5. arm-linux-objcopy
  6. C#跳出循环的几种方法的区别
  7. HDU 1849 Rabbit and Grass
  8. php-fpm 相关
  9. Python之父重回决策层
  10. TNS-12541: TNS: 无监听程序 解决方案
  11. Spark学习之wordcount程序
  12. Laravel 5.5 文档 ] 快速入门 —— 安装配置篇
  13. [VS] - "包含了重复的“Content”项。.NET SDK 默认情况下包括你项目中的“Content”项。
  14. Robot Operating System (ROS)学习笔记---创建简单的机器人模型smartcar
  15. Architecture.SOLID-Principles
  16. python-函数中的参数类型和可变参数解析
  17. npm使用报错解决办法
  18. MySQL--限制用户使用资源
  19. [Phonegap+Sencha Touch] 移动开发29 安卓navigator.camera.getPicture得到图片的真实路径
  20. [ 转载 ] Java开发中的23种设计模式详解(转)

热门文章

  1. Oracle数据迁移至HBase操作记录
  2. spfile 和用户环境变量 和export
  3. Window下使用Xshell连接VirtualBox中CentOS SSH最佳实践
  4. Win7如何关闭操作中心的图标
  5. Python工作日类库Busines Holiday介绍
  6. 在k8s上部署第一个php应用
  7. Android 解决qq分享后返回程序出现的Bug
  8. [读后感]Java 控制台执行 Jar 传參的编码问题
  9. 算法笔记_070:BellmanFord算法简单介绍(Java)
  10. Java学习笔记1、常用dos命令