Exemple #1
0
        public Tree RemoveLike(Tree a_find)
        {
            int cmp = Compare(a_find);

            if (cmp == 0)
            {
                return((Tree)Remove());
            }
            if (cmp > 0)
            {
                if (_preceding != null)
                {
                    _preceding = _preceding.RemoveLike(a_find);
                }
            }
            else
            {
                if (_subsequent != null)
                {
                    _subsequent = _subsequent.RemoveLike(a_find);
                }
            }
            CalculateSize();
            return((Tree)this);
        }
Exemple #2
0
 public static Tree RemoveLike(Tree from, Tree a_find)
 {
     if (from == null)
     {
         return(null);
     }
     return(from.RemoveLike(a_find));
 }
Exemple #3
0
		public static Tree RemoveLike(Tree from, Tree a_find)
		{
			if (from == null)
			{
				return null;
			}
			return from.RemoveLike(a_find);
		}
Exemple #4
0
 public virtual void Remove(object element)
 {
     _tree = Tree.RemoveLike(_tree, new TreeObject(element, _comparison));
 }