# Blätter eines Baumes zählen



## MayYes (16. Dez 2009)

Hallo zusammen,

muss gerade einen Methode programmieren der die Blätter eines Baumes zählt. Man BeispielBaum sieht so aus:
10 ist die Wurzel, links von der zehn sind alle zahlen die kleiner sind als die wurzel und rechts alle größer und die zahlen werden dann sortiert. Mein Baum hat 2 Blätter aber irgendwie und als Ergebniss sollte 2 rauskommen aber irgendwie sagt er mir 7 oO. Mein Baum sieht so aus:
Mein Baum sieht so aus von links nach rechts:

0, 2, 4, 7, 10(Wurzel), 12, 17, 22

 Hier meine Methode


```
public int calcLeaf(Node e){
		if(e != null){
			calcLeaf(e.left);
			calcLeaf(e.right);
		if(e.left == null && e.right == null)
			count1++;
		}
		return count1;
	}
```

Freue mich über jede Hilfe

MFG MayYes


----------



## javimka (16. Dez 2009)

Ist count1 eine Instanzvariable? Ist sie 0, bevor du das erste mal calcLeaf aufrufst?
Warum zählst du count1++ nur, wenn e.left und e.right null sind?

Kannst du nicht ein bisschen mehr posten, dann kann ich es mal bei mir laufen lassen. Ist einfacher, als die Glasskugel-Analyse


----------



## MayYes (16. Dez 2009)

Hehe...hab count1 schonmal verwendet und es hatte noch den alten Wert....tja daran lag es
Danke dir


----------

