关于 fhq split 函数
查看原帖
关于 fhq split 函数
773915
endswitch楼主2025/1/12 15:08

rt。

inline void split(int p, int k, int &x, int &y) { // p 表示当前分裂树的根节点,x,y 表示分裂成的两棵树的根节点,k 为关键字
  if(! p) return x = y = 0, void();
  else if(val[p] <= k) { // 按权值分裂
    x = p;
    split(rs[p], k, rs[p], y); // 递归右子树
  }
  else {
    y = p;
    split(ls[p], k, x, ls[p]);
  }

  psup(p);

  return ;
}

为什么我在第二行 ! p 的情况下不 return 而是 psup 会炸阿。

2025/1/12 15:08
加载中...