Esempio n. 1
0
        public void Delete(KNode node)
        {
            if (node == null)
            {
                throw new NullReferenceException("node");
            }
            if (this.Find(node.Value) == null)
            {
                throw new ArgumentOutOfRangeException(node.Value);
            }
            var clone = ((Array)_list).Clone();
            var pos = 0;

            _list = new KNode[((Array)clone).Length - 1];

            foreach (KNode item in (Array)clone)
            {
                if (!node.Equals(item))
                {
                    _list[pos] = item;
                    pos++;
                }
            }
        }