public void RemovePrev() { // check for null if (currentNode == null) { return; } //change header if (currentNode.prevNode == headerNode) { headerNode = currentNode; } if (currentNode.nextNode == currentNode) { currentNode = null; headerNode = null; return; } // remove perviuse node NodeCircular nodeSkip = currentNode.prevNode; if (nodeSkip != null) { currentNode.prevNode = currentNode.prevNode.prevNode; currentNode.prevNode.nextNode = currentNode; } nodeSkip.prevNode = null; nodeSkip.nextNode = null; nodeSkip = null; }
/*public void AddToFirst(GameObject nodeItem) * { * NodeCircular newFirstNode = new NodeCircular(nodeItem); * newFirstNode.nextNode = headerNode; * headerNode = newFirstNode; * newFirstNode.prevNode = null; * }*/ public void RemoveNext() { if (currentNode == null) { return; } if (currentNode.nextNode == headerNode) { headerNode = currentNode; } if (currentNode.nextNode == currentNode) { currentNode = null; headerNode = null; return; } NodeCircular nodeSkip = currentNode.nextNode; if (nodeSkip != null) { if (currentNode.nextNode.nextNode != null) { currentNode.nextNode = currentNode.nextNode.nextNode; currentNode.nextNode.prevNode = currentNode; } nodeSkip.prevNode = null; nodeSkip.nextNode = null; nodeSkip = null; } }
public MyCircularyLinkedList(GameObject nodeItem) { headerNode = new NodeCircular(nodeItem); currentNode = headerNode; currentNode.nextNode = currentNode; currentNode.prevNode = currentNode; }
public bool MoveToPrev() { if (currentNode.prevNode != null) { currentNode = currentNode.prevNode; return(true); } else { return(false); } }
public bool MoveToNext() { if (currentNode.nextNode != null) { currentNode = currentNode.nextNode; return(true); } else { return(false); } }
public void AddPrev(GameObject nodeItem) { NodeCircular newNode = new NodeCircular(nodeItem); newNode.nextNode = currentNode; newNode.prevNode = currentNode.prevNode; if (currentNode.prevNode != null) { currentNode.prevNode.nextNode = newNode; } currentNode.prevNode = newNode; }
public void ResetToHeader() { currentNode = headerNode; }
public NodeCircular(GameObject nodeInfo) { nodeInformation = nodeInfo; nextNode = null; }