public void InsertFirst(Object n) { DoubleNode current = new DoubleNode(n); current.Blink = header; header.Flink = current; count++; }
public void Remove(Object n) { DoubleNode p = FindPrevious(n); if (!(p.Flink == null)) { p.Flink = p.Flink.Flink; count--; } }
public void Insert(Object n1, Object n2) { DoubleNode current = new DoubleNode(); DoubleNode newnode = new DoubleNode(n1); current = Find(n2); newnode.Flink = current.Flink; current.Flink = newnode; count++; }
private DoubleNode FindPrevious(Object n) { DoubleNode current = header; while (!(current.Blink == null) && current.Blink.Element != n) { current = current.Blink; } return(current); }
public void Insert(Object newItem, Object after) { DoubleNode current = new DoubleNode(); DoubleNode newNode = new DoubleNode(newItem); current = Find(after); newNode.Flink = current.Flink; newNode.Blink = current; current.Flink = newNode; }
private DoubleNode Find(Object n) { DoubleNode current = new DoubleNode(); current = header.Flink; while (current.Element != n) { current = current.Flink; } return(current); }
public void PrintList() { DoubleNode current = new DoubleNode(); current = header; while (!(current.Flink.Element.ToString() == "header")) { Console.WriteLine(current.Flink.Element); current = current.Flink; } }
public void PrintReverse() { DoubleNode current = new DoubleNode(); current = FindLast(); while (!(current.Blink == null)) { Console.WriteLine(current.Element); current = current.Blink; } }
private DoubleNode FindLast() { DoubleNode current = new DoubleNode(); current = header; while (!(current.Flink == null)) { current = current.Flink; } return(current); }
public void Remove(Object n) { DoubleNode p = Find(n); if (!(p.Flink == null)) { p.Blink.Flink = p.Flink; p.Flink.Blink = p.Blink; p.Flink = null; p.Blink = null; } }
public DoubleNode Move(int n) { DoubleNode current = header.Flink; DoubleNode temp; for (int i = 0; i <= n; i++) { current = current.Flink; } if (current.Element.ToString() == "header") { current = current.Flink; } temp = current; return(temp); }
public DoubleNode(Object theElement) { Element = theElement; Flink = null; Blink = null; }
public DoubleNode() { Element = null; Flink = null; Blink = null; }
public CircularLinkedList() { count = 0; header = new DoubleNode("header"); header.Flink = header; }
public DoublyLinkedList() { header = new DoubleNode("header"); }