1 个赞
为什么split.
node split(int x,int k)
{
if(!x) return {0,0};
if(val[x]<k)
{
node t=split(sr[x],k);
sr[x]=t.x;
push_up(x);
return {x,t.y};
}
else
{
node t=split(sl[x],k);
sl[x]=t.y;
push_up(x);
return {t.x,x};
}
}
改成
node split(int x,int k)
{
if(!x) return {0,0};
if(val[x]<=k)
{
node t=split(sr[x],k);
sr[x]=t.x;
push_up(x);
return {x,t.y};
}
else
{
node t=split(sl[x],k);
sl[x]=t.y;
push_up(x);
return {t.x,x};
}
}
过了,谁能解释一下吗?
1 个赞
哦,知道了
1 个赞