コード例 #1
0
        public void InsertAt(T item, int index)
        {
            if (index < 0 || index > _count)
            {
                throw new IndexOutOfRangeException();
            }

            var newNode = new ListNode <T> {
                Data = item
            };

            if (Added != null)
            {
                Added($"Вставлена строка: {item} в позицию {index+1}");
            }
            ListNode <T> .Updade_LastID();    //UP ID при способе Вставка узла

            if (index > 0)
            {
                var prev = GetNodeByIndex(index - 1);
                newNode.Next = prev.Next;
                prev.Next    = newNode;
            }
            else
            {
                newNode.Next = _head;
                _head        = newNode;
            }
            _count++;
        }
コード例 #2
0
        public void Add(T item)
        {
            var node = new ListNode <T> {
                Data = item
            };

            if (Added != null)
            {
                Added($"Добавлена строка: {item}");
            }
            ListNode <T> .Updade_LastID();      //обновление последнего созданного ID

            if (_count == 0)
            {
                _head = node;
                _last = _head;
            }
            else
            {
                _last = _last.Next = node;
            }
            _count++;
            //if (Added != null) Added($"Добавлена строка: {item}");
        }