Ich sollte also ein Programm schreiben, um das k-kleinste Element in einem binären Suchbaum zu drucken. Das ist der Code, den ich habe. So traurig das ist, ich habe 45 Minuten lang auf meinen Code gestarrt und ich kann einfach nicht meinen Fehler finden. Könnte mir jemand helfen?Warum funktioniert mein Programm zur Rückgabe des k-ten kleinsten Elements in einer BST nicht?
0
A
Antwort
0
curr-Variable ist lokaler Funktionsparameter, wenn Sie sie ändern, ist der neue Wert auf der oberen Ebene NICHT verfügbar. Mit anderen Worten, wenn Sie eine Stufe aufzusteigen, dann ist sein Wert auf 1 zurückgesetzt
muß etwas wie die
function kthLargestInBST(t, k) {
var q = {curr:1, res:null}
helper(t, k, q);
return q.res;
}
// returns true if found the result
function helper(t, k, q) {
if (t === null) return false;
if (helper(t.left, k, q)) return true;
if (q.curr === k) {
q.res = t.value;
return true;
}
q.curr++;
return helper(t.right, k, q);
}
seine
Verwandte Themen
- 1. Rückgabe des kleinsten Elements in einer Liste in Schema
- 2. Warum funktioniert mein Programm nicht?
- 3. Rückgabe des kleinsten Wertes eines Arrays
- 4. Warum funktioniert mein C++ - Programm nicht?
- 5. Warum funktioniert mein PHP-Programm nicht?
- 6. Warum funktioniert mein Java-Programm nicht richtig?
- 7. Warum funktioniert mein C-Programm nicht? Aus einer Datei lesen
- 8. Return-Index des kleinsten Elements im Array
- 9. Warum wird mein BST nicht in eine Datei geschrieben?
- 10. Warum endet mein Programm in einer Endlosschleife?
- 11. Mein C++ - Programm funktioniert nicht
- 12. Wirklich kann nicht verstehen, warum mein Programm nicht funktioniert
- 13. Warum funktioniert mein Front_back-Programm in Python nicht?
- 14. Java: Mein gültiges Programm zur Datumsüberprüfung funktioniert nicht für Schaltjahre
- 15. Mein Javascript-Programm funktioniert nicht
- 16. Warum findet mein Programm meine Datei nicht?
- 17. Rückgabe des letzten Elements einer Liste in Haskell mit Rekursion
- 18. Warum funktioniert mein Wortgenerator nicht?
- 19. Wie zu debuggen, warum mein Python-Programm nicht funktioniert?
- 20. Warum funktioniert mein Vergleichsprogramm nicht?
- 21. Warum blockiert mein Programm nach einer Rückkehr?
- 22. Warum bewirkt dieser Code, dass mein Programm nicht mehr funktioniert?
- 23. Warum funktioniert mein Programm nicht mit großen Zahlen?
- 24. Warum funktioniert mein if/elif/else nicht?
- 25. Warum funktioniert mein Versprechen nicht?
- 26. Warum funktioniert mein Hash in Ruby nicht?
- 27. Warum läuft mein Programm unendlich?
- 28. Warum wiederholt mein Programm Drucklisten?
- 29. Warum funktioniert mein Dropdown nicht?
- 30. Warum wird mein C++ - Programm nicht kompiliert?