adjust.h
来自「AVL树」· C头文件 代码 · 共 83 行
H
83 行
#include<iostream.h>
#include"avltree.h"
PAVLNode adjust1(PAVLNode a,PAVLNode b)
{
PAVLNode c;
c=b; //将*b的信息暂时储存
b=a; //*b取代*a
b->rlink=c->rlink; //调整*b的信息
b->llink=a;
b->key=c->key;
b->value=c->value;
a->rlink=c->llink; //调整*a的信息
a->plink=b;
if(c->bf==0)
b->bf=-1;
else
{
b->bf=0;
a->bf=0;
}
return b;
}
PAVLNode adjust2(PAVLNode a,PAVLNode b)
{
PAVLNode c,d;
c=d=b->llink;
c=a;
c->key=d->key;
c->llink=a;
c->rlink=b;
c->value=d->value;
a->plink=c;
a->rlink=d->llink;
b->plink=c;
b->llink=d->rlink;
c->bf=0;
return c;
}
PAVLNode adjust_1(PAVLNode a,PAVLNode b)
{
PAVLNode c;
c=b;
b=a;
b->llink=c->llink;
b->rlink=a;
b->key=c->key;
b->value=c->value;
a->llink=c->rlink;
a->plink=b;
if(c->bf==0)
b->bf=1;
else
{
a->bf=0;
b->bf=0;
}
return b;
}
PAVLNode adjust_2(PAVLNode a,PAVLNode b)
{
PAVLNode c,d;
c=d=b->rlink;
c=a;
c->key=d->key;
c->rlink=a;
c->llink=b;
c->value=d->value;
a->plink=c;
a->llink=d->rlink;
b->plink=c;
b->rlink=d->llink;
c->bf=0;
return c;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?