public class List2a { ListNode prehead; List2a(ListNode n) { prehead = new ListNode(0,n); } static void searchInsert(List2a l, int key, int v) { // neuen Knoten mit Wert v vor dem Knoten mit wert key in l einfuegen // bzw. am Ende ListNode previous = l.prehead; ListNode n = previous.next; while (n != null && n.val != key) { previous = n; n = n.next; } ListNode newnode = new ListNode(v, n); previous.next = newnode; } static void print(List2a l) { ListNode.print(l.prehead.next); } public static void main(String [] args) { List2a l1=new List2a(new ListNode(1, new ListNode(3,null))); print(l1); searchInsert(l1, 3, 5); print(l1); searchInsert(l1, 1, 7); print(l1); searchInsert(l1, 5, 8); print(l1); // Einfuegen am Ende testen searchInsert(l1, 99, 9); print(l1); } }