public virtual Tree Remove() { if (_subsequent != null && _preceding != null) { _subsequent = _subsequent.RotateSmallestUp(); _subsequent._preceding = _preceding; _subsequent.CalculateSize(); return(_subsequent); } if (_subsequent != null) { return(_subsequent); } return(_preceding); }
public virtual Tree Remove() { if (_subsequent != null && _preceding != null) { _subsequent = _subsequent.RotateSmallestUp(); _subsequent._preceding = _preceding; _subsequent.CalculateSize(); return _subsequent; } if (_subsequent != null) { return _subsequent; } return _preceding; }