红黑树插入、删除pascal源程序
来源:百度知道 编辑:UC知道 时间:2024/06/21 02:16:32
红黑树插入、删除的pascal源程序,紧急万分!!!!!!!!
没办法,只能采纳你的了……
没办法,只能采纳你的了……
红黑树已经是一个很原始的平衡树抽象数据结构了。虽然在当时很有理论价值,但是现在已经被诸多更优秀的高级数据结构取代。
红黑树的代码我也一直没有找到,只好告诉你一些他的代替品:
主要有
Splay Tree
Treap
Random AVL Tree
Size Ballanced Tree
----------------------AVL树---------------------
{$inline on}
program CQF_AVL;
uses math;
const maxn=2000000;
var key,s,left,right,h,a,b:array[0..maxn] of longint;
tt,q:longint;
procedure init;
begin
readln(q);
for q:=1 to q do
readln(a[q],b[q]);
end;
procedure work;
var t,k:longint;
procedure right_rotate(var t:longint);inline;
begin
k:=left[t];
left[t]:=right[k];
right[k]:=t;
s[k]:=s[t];
s[t]:=s[left[t]]+s[right[t]]+1;
h[t]:=max(h[left[t]],h[right[t]])+1;
h[k]:=max(h[left[k]],h[right[k]])+1;
t:=k;