萌新刚学fhq平衡树
  • 板块学术版
  • 楼主Cheng、熙®
  • 当前回复7
  • 已保存回复7
  • 发布时间2020/8/20 18:35
  • 上次更新2023/11/6 19:49:33
查看原帖
萌新刚学fhq平衡树
125359
Cheng、熙®楼主2020/8/20 18:35

在看某博客的时候有这样一段代码

int merge(int x,int y){
	if(!x || !y) return x+y;
	if(rank[x]<rank[y]){
		son[x][1]=merge(son[x][1],y);
		update(x);return x;
	}
	else{
		son[y][0]=merge(x,son[y][0]);
		update(y);return y;
	}
}

为什么在else情况下,要把x归到y的左子树上,的rank[x]要比rank[y]大,不应该归到y的右子树上吗?

2020/8/20 18:35
加载中...