Java: Count chiar valori într-un binar de căutare copac recursiv

voturi
-2

Am nevoie pentru a afla cât de multe valori chiar sunt conținute într-un arbore binar.

acest lucru este codul meu.

private int countEven(BSTNode root){

if ((root == null)|| (root.value%2==1))
return 0;

return 1+ countEven(root.left) + countEven(root.right);


}

acest fel am codificat ca nu am o modalitate de a testa acest aspect. Nu sunt în stare să-l testeze in acest moment, dar au nevoie de un răspuns atât de rău. orice ajutor este foarte apreciat.

Întrebat 02/04/2010 la 14:13
sursa de către utilizator
În alte limbi...                            


2 răspunsuri

voturi
0
private int countEven(BSTNode root) {
   if (root == null)
      return 0;

   int n = countEven(root.left) + countEven(root.right);
   if(root.value % 2 == 0)
      return n + 1;
   else
      return n;
}
Publicat 02/04/2010 la 14:20
sursa de către utilizator

voturi
1

Dacă există un nod cu o valoare impară care conține subnoduri cu valori chiar, cele subnoduri nu vor fi luate în considerare în codul. accesoriu mici de mai jos.

private int countEven(BSTNode root){

  if (root == null)
    return 0;

  int val = (root.value%2==1) ? 0 : 1;

  return val + countEven(root.left) + countEven(root.right);


}
Publicat 02/04/2010 la 14:21
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more