2017-09-03 3 views
3

Ich bin ein Neuling in Python und ich habe ein Problem. Ich verwende Python 3.Holen Sie sich die Höhe eines binären Suchbaums

ich diese Logik für binäre Suchbäume verwendet haben, um die Höhe der es zu bekommen:

Mit diesem Eingang:

7 
3 
5 
2 
1 
4 
6 
7 

Die erste ist die Anzahl der Knoten.

Aber ich habe vier statt drei und im Beispiel wird gesagt, dass die Höhe drei sein muss.

Was mache ich falsch?

HINWEIS: mein Code ist nur auf getHeight Methode.

+0

Ich denke, 4 hier die richtige Antwort ist. –

Antwort

1

Sie können Ihre Antwort durch die Baumzeichnung basierend auf dem Einsatz Logik vier

level1    3 
level2   2  5 
level3  1   4 6 
level4      7 

Wenn Sie zählen Kanten, dann ja, dann ist es drei, aber die Höhe des Baumes von Hand überprüfen klar .

Sie rund um die schlecht formulierte Problem durch return -1 im Basisfall hacken

+0

Die erste 7 ist die Anzahl der Knoten. – VansFannel

+1

Wie Sie hier auch sehen können, ist die Höhe tatsächlich 4 nicht 3. –

+0

Schauen Sie: https://www.hackerrank.com/challenges/30-binary-search-trees/problem. Dies ist die Problemstellung. Hier wollen sie die Kanten zählen, nicht die Knoten. – VansFannel

Verwandte Themen