public void DeletePosition(int position) { int count = 1; if (position <= Count) { linkedlistNode <T> temp = Head; linkedlistNode <T> hold; while (temp != null) { if (count == position) { hold = temp.Next; temp.Next = temp.Next.Next; hold = null; break; } temp = temp.Next; count++; } } else { Console.WriteLine("OutOFBound"); } }
public void printList() { linkedlistNode <T> node = Head; while (node != null) { Console.WriteLine(node.Value); node = node.Next; } }
public void removeFirst() { if (Count != 0) { Head = Head.Next; Count--; if (Count == 0) { Tail = null; } } }
public void addFirst(linkedlistNode <T> node) { linkedlistNode <T> temp = Head; Head = node; Head.Next = temp; Count++; if (Count == 1) { Tail = Head; } }
public void addLast(linkedlistNode <T> node) { if (Count == 0) { Head = node; } else { Tail.Next = node; } Tail = node; Count++; }
public void removeLast() { if (Count != 0) { if (Count == 1) { Head = null; Tail = null; } else { linkedlistNode <T> current = Head; while (current.Next != Tail) { current = current.Next; } current.Next = null; Count--; Tail = current; } } }
public void InsertPosition(int position, linkedlistNode <T> node) { int count = 1; if (position <= Count) { linkedlistNode <T> temp = Head; while (temp != null) { if (count == position) { node.Next = temp.Next; temp.Next = node; break; } temp = temp.Next; count++; } } else { Console.WriteLine("OutOFBound"); } }