zoukankan      html  css  js  c++  java
  • 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。

    splay_splay:

     1 inline splay_node * splay(splay_node *x){
     2     pushdown(x);//上来别忘pushdown
     3     while(1){//循环走起带你飞
     4         splay_node *y,*z;
     5         int d1=get_parent(x,y);//d1是根我们break
     6         if(d1==-1) break;
     7         int d2=get_parent(y,z);//d2是根rotate
     8         if(d2==-1){rotate(x);break;}
     9         if(d1==d2) rotate(y),rotate(x);//如果相等就yx
    10         else rotate(x),rotate(x);//如果不等就xx
    11     } x->update();return x;//最后一定update ,把x记得扔回去
    12 }
    d1是根我们break,d2是根rotate,如果相等就yx,如果不等就xx,上来别忘pushdown,最后一定update。
  • 相关阅读:
    机器学习入门-相关性分析
    R语言-记号体系
    R语言基础
    职位画像分析(pandas/ matplotlib)
    python 可视化工具-matplotlib
    pandas-缺失值处理
    k-means实战-RFM客户价值分群
    药店商品销量分析(python)
    Jike_Time-决策树
    3.7 嵌入式SQL
  • 原文地址:https://www.cnblogs.com/chxer/p/4489220.html
Copyright © 2011-2022 走看看