public void insert(ListElement newElem, int i) { if (i == 0) insert(newElem); else { ListElement tmp = head; ListElement prev = null; int l = 0; // Aufsuchen des i-ten Elements while (l < i) { prev = tmp; tmp = prev.next; l++; } // l == i ist erreicht prev.next = newElem; newElem.next = tmp; } }