Entweder gehst Du rekursiv vor, oder viel einfacher: Lass den Benutzer zuerst alle Unterknoten selber löschen...
Dass ein Hauptknoten gelöscht wird, dürfte sowieso eher selten vorkommen.
Die Einträge der Knotenpunkt würde ich übrigens nicht effektiv löschen, sondern ich würde noch mindestens ein zusätzliches Kontroll-Feld einführen: "geloescht" (oder sinngemäss)
Was Du unbedingt im Auge behalten musst, ist die Zuweisung der Einträge, die auf die Liste Bezug nehmen (Bücher?), ansonsten sind diese nirgends mehr zugehörig.
_________________
Es kompilert, wir können ausliefern.
Und es kompiliert wieder - das Update ist fertig - bitte 100 Euro