Esempio n. 1
0
        public void Add(T Value)
        {
            QiwiLinkedList <T> current = this;

            while (current.Next != null)
            {
                current = current.Next;
            }
            current.Next = new QiwiLinkedList <T>(Value);
        }
Esempio n. 2
0
        public int Count()
        {
            QiwiLinkedList <T> current = this.Next;

            int counter = 0;

            while (current != null)
            {
                current = current.Next;
                counter++;
            }
            return(counter);
        }
Esempio n. 3
0
        public void Add(T Value, uint index)
        {
            QiwiLinkedList <T> current = this;

            uint counter = 0;

            while (counter < index)
            {
                if (current == null)
                {
                    throw new IndexOutOfRangeException();
                }
                current = current.Next;
                counter++;
            }
            current.Next = new QiwiLinkedList <T>(Value, current.Next);
        }
Esempio n. 4
0
        public void Delete(uint index)
        {
            QiwiLinkedList <T> current = this;

            int counter = 0;

            while (counter < index)
            {
                if (current == null)
                {
                    throw new IndexOutOfRangeException();
                }
                current = current.Next;
                counter++;
            }
            current.Next = current.Next?.Next;
        }
Esempio n. 5
0
        public T Get(uint index)
        {
            QiwiLinkedList <T> current = this.Next;

            int counter = 0;

            while (counter < index)
            {
                if (current == null)
                {
                    throw new IndexOutOfRangeException();
                }
                current = current.Next;
                counter++;
            }
            return(current.Value);
        }
Esempio n. 6
0
        public string Get()
        {
            QiwiLinkedList <T> current = this.Next;

            StringBuilder result  = new StringBuilder();
            int           counter = 0;

            while (current != null)
            {
                result.Append(counter++);
                result.Append(" : ");
                result.Append(current.Value.ToString());
                result.Append("\n");
                current = current.Next;
            }
            return(counter == 0 ? "Список пуст" : result.ToString());
        }
Esempio n. 7
0
 public QiwiLinkedList(T Value, QiwiLinkedList <T> Next)
 {
     this.Value = Value;
     this.Next  = Next;
 }
Esempio n. 8
0
 public QiwiLinkedListEnumerator(QiwiLinkedList <T> list)
 {
     this.list     = list;
     this.position = list;
 }