// Hinten anfügen public void Append(int data /*, IntegerNode head */) { if (nachfolger == null) // nachfolger == head { // circular simply linked list // var tempHead = head; nachfolger = new IntegerNode(data); // nachfolger.nachfolger = tempHead; } else { nachfolger.Append(data); } }
// am ende anfügen (liste FIFO) public void Add(int data) { if (head == null) { head = new IntegerNode(data); // circular simply linked list // head.next = head; 4 - // ^ | } else { head.Append(data); } length++; }
// prepend = am anfang anfügen (stack FILO) public void Prepend(int data) { if (head == null) { head = new IntegerNode(data); } else { IntegerNode integerNode = new IntegerNode(data); integerNode.nachfolger = head; head = integerNode; /* * 4 -> 3 * h * * 2 -> 4 -> 3 * h * * 2 -> 4 -> 3 * h */ /* * var temp = new Node(data); * temp.next = head; * head = temp; */ } // (2 ->) 4 -> 3 // 4.nachfolger: 3 // 3.nachfolger: null length++; }
public IntegerListe() { head = null; }
public IntegerNode(int data) { this.data = data; nachfolger = null; length++; }