Da beim Lernen des Lehrstoffes bzw. bei der Programmierung der AVL-Baum-Implementierung (Nr. 3) einige Probleme bzw. Unsicherheiten aufgetaucht sind, erlaube ich mir Sie zu fragen, ob Sie mir bzgl. des Stoffes und der 3. Aufgabe einige Erklärungen geben könnten? Zum Lehrstoff: 1. Wie bestimme ich die atomaren Operationen (z.B. 6+ 5n)? 2. S. 43.: Induktionsbeweis allgemein & wie komme ich auf diese Werte bzw. Zahlen? 3. Mein Taschenrechner unterstützt nur log(zahl) = Ergebnis. Wie kann ich den Logarithmus von log_b(a) auf eine andere Weise berechnen? 4. Wie kann ich die asymptotische Laufzeit abschätzen (raten)? Nur einige Tipps. 5. Wie kann man die 3 Fälle des Master-Theorems allgemein beweisen? 6. Warum wird beim Heap-Sort der 10-er mit dem 1-er getauscht (presentation.pdf S. 75 (115 of 720))? 7. Schleifeninvariante (Schema bzw. Aufstellung)? 8. S. 81.: Wie komme ich auf diese Werte bzw. Umformungen (Komplexität von Heap-Sort)? --> Siehe Anhang! 9. S. 90. – 92.: Average-Case Quick-Sort: wie komme ich auf diese Werte bzw. Umformungen (durch Abschätzungen, usw.)? 10. Bucket-Sort-Beispiel (S. 99 (331 of 720)): wie kommt man auf den10-er bzw. auf die nachfolgenden Werte? -à Siehe Anhang! 11. Induktionsbeweis für Quick-Select (S. 111)? 12. Die amortisierten Kosten sind jene Kosten, welche danach wieder durch Guthaben aufgelöst werden. Liege ich richtig? Zur Aufgabe Nr. 3: 1. Anfangs werden 9 vorgegebene Werte eingefügt. Danach zufällig erzeugte. Welche muss ich nun auf Existenz überprüfen? 2. Mit welcher Methode soll man anfangen insert, contains, balGrow, usw.? 3. Was macht der Befehl assert in balGrow? 4. Muss man bei insert die balGrow-Methode aufrufen (um AVL-Eigenschaft herzustellen) oder separate Berechnungen machen? 5. Muss man bei contains den Baum mittels einer Schleife durchwandern? 6. Muss man bei insert bevor man einfügt einen neuen Knoten erzeugen? 7. Was bedeutet: „Hint: this might require some cumbersome case distinction code”? 8. Welche Variablen darf ich alles verwenden (Variablen in class Node)?