/// <summary> /// Removes node at index. /// </summary> /// <param name="index">index</param> /// <returns></returns> public bool Remove(int index) { if (index < 1 || index > Size()) { return(false); } Node current = head; if (index == 0) { current.SetNext(current.GetNext().GetNext()); listCount--; return(true); } for (int i = 1; i < index; i++) { if (current.GetNext() == null) { return(false); } current = current.GetNext(); } current.SetNext(current.GetNext().GetNext()); listCount--; return(true); }
/// <summary> /// Adds to the list. /// </summary> /// <param name="item">Item</param> public void Add(Items item) { Node temp = new Node(item); Node current = head; while (current.GetNext() != null) { current = current.GetNext(); } current.SetNext(temp); listCount++; }
/// <summary> /// Adds item to the list by specific index. /// </summary> /// <param name="item">Item</param> /// <param name="index">Index</param> public void Add(Items item, int index) { Node temp = new Node(item); Node current = head; for (int i = 1; i < index && current.GetNext() != null; i++) { current.GetNext(); } temp.SetNext(current.GetNext()); current.SetNext(temp); listCount++; }