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 会炸阿。
! p
return
psup