public class LinkedList implements List { ListNode kopf; protected static class ListNode implements List.Node { public int data; // die gespeicherte Ganzzahl public ListNode next; // naechster Knoten der verketteten Liste public int getData() { return data; } } // Erstellt einen neuen Listeneintrag fuer das Element a und fuegt // ihn am Kopf der Liste hinzu. public void add(int a) { ListNode lnNew = new ListNode(); lnNew.data = a; lnNew.next = kopf; kopf = lnNew; } //Erstellt einen neuen Listenknoten fuer und fuegt ihn nach n in der Liste // ein. public void insert(Node n, int a) { /* ListNode lnNew = new ListNode(); lnNew.data = a; lnNew.next = n; n = lnNew; */ } // Findet das erste Vorkommen einer Node in der Liste und gibt eine // Referenz auf den jeweiligen Listeneintrag zurueck (oder null, // wenn es nicht enthalten ist). public Node find(int a) { while( ListNode != null) { } return null; } // Findet das erste Vorkommen eines Werts und entfernt den // entsprechenden Listeneintrag aus der Liste. public void remove(int a) { } // Entfernt den Listeneintrag aus der Liste. public void remove(Node e) { } // Gibt den ersten Eintrag der Liste zurueck. public Node getFirst() { return null; } // Gibt den Listeneintrag zurueck, der Nachfolger von e ist. public Node getNext(Node e) { return null; } // Gibt den letzten Eintrag der Liste zurueck. public Node getLast() { return null; } // Gibt den Listeneintrag zurueck, dessen Nachfolger e ist. public Node getPrevious(Node e) { return null; } // Gibt die Anzahl der Listeneintraege zurueck. public int size() { return 0; } public static void main(String[] args) { } }