public void Pop() { if (head != null) { head = head.next; } else { Console.WriteLine("No elements in the list"); } }
/// <summary> /// Method, which adds a new element in the list /// </summary> /// <param name="value">value of an element</param> public void AddElement(int value) { if (IsEmpty()) { ListElement tmp = new ListElement(null, value); head = tmp; tail = tmp; } else { ListElement tmp = new ListElement(null, value); tail.Next = tmp; tail = tmp; } }
public void Push(int value) { if (head == null) { ListElement tmp = new ListElement(); ListElement head = tmp; tmp.next = null; tmp.element = value; tail = tmp; } else { ListElement tmp = new ListElement(); tmp.element = value; tmp.next = null; tail.next = tmp; } }
/// <summary> /// Method, which deletes an element from the list /// </summary> /// <param name="value">value of the element, which is wanted to be deleted</param> /// <returns>value of deleted element</returns> public int DeleteElement(int value) { if (!IsEmpty()) { if (head.Next != null) { if (head.Element == value) { head = head.Next; return value; } ListElement tmp = head; while (tmp.Next.Element != value && tmp != null) { tmp = tmp.Next; } if (tmp == null) { throw new NullReferenceException("This element doesn't exist"); } else { tmp.Next = tmp.Next.Next; return value; } } else { if (head.Element == value) { head = null; return value; } else { throw new NullReferenceException("This element doesn't exist"); } } } else { throw new NullReferenceException("No elements in the list"); } }
public ListElement(ListElement next, int value) { this.Next = next; this.Element = value; }