OI记忆口诀

splay_rotate:

inline void rotate(splay_node *x){
    splay_node *y,*z;int d1,d2;
    d1=get_parent(x,y);//三个结点扔过来同时统计d值
    d2=get_parent(y,z);
    if(y->ch[d1]=x->ch[d1^1]) y->ch[d1]->fa=y;//y正x反y正爹
    y->fa=x;x->fa=z;x->ch[d1^1]=y;//yx,xz,x反y
    if(d2!=-1) z->ch[d2]=x;//d2非根z正x
    y->update();//别忘y要update
    return;
}

y正x反y正爹,yx、xz、x反y,d2非根z正x,别忘y要update。

时间: 2024-10-07 10:02:42

OI记忆口诀的相关文章

运算符优先级记忆口诀及列表(转)

C语言运算符优先级和口诀 一共有十五个优先级: 同一优先级的运算符,运算次序由结合方向所决定 1   ()  []  .  ->        (括号,成员排第一) 2   !  ~   -(负号) ++  --   &(取变量地址)*   (type)(强制类型)    sizeof       (单目运算排第二) 3   * / %         (乘除余三) 4   + -             (加减四) 5   >> <<          (移位五)

C 语言运算符优先级(记忆口诀)

优先级 运算符 名称或含义 使用形式 结合方向 说明 1 [] 数组下标 数组名[常量表达式] 左到右   () 圆括号 (表达式)/函数名(形參表)   . 成员选择(对象) 对象.成员名   -> 成员选择(指针) 对象指针->成员名   2 - 负号运算符 -表达式 右到左 单目运算符 (类型) 强制类型转换 (数据类型)表达式   ++ 自增运算符 ++变量名/变量名++ 单目运算符 -- 自减运算符 --变量名/变量名-- 单目运算符 * 取值运算符 *指针变量 单目运算符 &

项目成本管理记忆口诀:

成本估算(雷子,下官卖金子) 类比估算,确定资源费率,自下而上成本估算,管理软件,卖方投标分析,准备金分析,质量成本 成本预算(城管参合) 成本总计,管理储备,参数模型,支出合理法 成本控制(成绩预计偏软) 成本变更,绩效测量,预测技术,绩效评估(偏差,趋势,挣值),偏差管理,管理软件

正则表达式记忆口诀

正则其实也势利,削尖头来把钱揣: (指开始符号^和结尾符号$) 特殊符号认不了,弄个倒杠来引路: (指\. \*等特殊符号) 倒杠后面跟小w, 数字字母来表示: (\w跟数字字母;\d跟数字) 倒杠后面跟小d, 只有数字来表示: 倒杠后面跟小a, 报警符号嘀一声: 倒杠后面跟小b, 单词分界或退格: 倒杠后面跟小t, 制表符号很明了: 倒杠后面跟小r, 回车符号知道了: 倒杠后面跟小s, 空格符号很重要: 小写跟罢跟大写,多得实在不得了: 倒杠后面跟大W, 字母数字靠边站: 倒杠后面跟大S, 空

java运算符优先级记忆口诀

单目乘除为关系,逻辑三目后赋值. 单目:单目运算符+ –(负数) ++ -- 等 乘除:算数单目运算符* / % + - 为:位移单目运算符<< >> 关系:关系单目运算符> < >= <= == != 逻辑:逻辑单目运算符&& || & | ^ 三目:三目单目运算符A > B ? X : Y 后:无意义,仅仅为了凑字数 赋值:赋值= 原文地址:https://www.cnblogs.com/-wanglei/p/1037061

字节序问题

1. 在设计计算机时,有两个不同的体系结构来处理内存存储区,他们被称为大字节序和小字节序.字节序是一个处理器架构特性,用于指示像整数这样大数据类型的内部字节顺序.几乎所有的机器上,多字节对象都被存储为连续的字节序列. 运行在同一台电脑上的进程在在英特尔的计算机上,低位字节被优先存储.这意味着像 0x1234 十六进制单词存储作为 (0x34 0x12) 在内存中.对于四个字节的值 :例如,0x12345678 将存储为 (0x78 0x56 0x34 0x12)."较大的一端在"这样做

Linux crond定时任务

第1章 Crond是什么? Crond是linux系统用来定期执行命令或指定程序任务的一种服务或软件.一般情况下,我们安装完Centos5/6linux操作系统之后,默认便会启动Crond任务调度服务.Crond服务会定期(默认每分钟检查一次)检查系统中是否有要执行的任务工作.如果有,便会根据其预先设定的定时任务规则自动执行该定时任务工作.这个Crond定时任务服务就相当于我们早上使用的闹钟一样. 第2章 Linux系统crond的定时任务 linux系统中定时任务调度的工作可以分为以下两种情况

Linux之定时任务

定时任务Crond介绍 Crond是linux系统中用来定期执行命令/脚本或指定程序任务的一种服务或软件,一般情况下,我们安装完Centos5/6 linux操作系统之后,默认便会启动Crond任务调度服务. Crond服务会定期(默认每分钟检查一次)检查系统中是否有要执行的任务工作,如果有,便会根据其预先设定的定时任务规则自动执行该定时任务工作,这个crond定时任务服务就相当于我们平时早起使用的闹钟一样. 必须保留的启动服务: crond:定时任务服务network:网络服务rsyslog:

三角函数

三角函数定义 把角度θ作为自变量,在直角坐标系里画个半径为1的圆(单位圆),然后角的一边与X轴重合,顶点放在圆心,另一边作为一个射线,肯定与单位圆相交于一点.这点的坐标为(x,y). sin(θ)=y; cos(θ)=x; tan(θ)=y/x; 三角函数公式大全 两角和公式 sin(A+B) = sinAcosB+cosAsinB sin(A-B) = sinAcosB-cosAsinB cos(A+B) = cosAcosB-sinAsinB cos(A-B) = cosAcosB+sinA