¿Cuál es el número máximo de nodos que se pueden encontrar en un árbol binario en los niveles 3, 4 y 12?

Obtiene la cantidad máxima de nodos en un árbol binario cuando el árbol está equilibrado.

  • El nivel 0 (raíz) tiene un solo nodo
  • El nivel 1 puede tener 2 nodos (los 2 hijos de la raíz)
  • El nivel 2 puede tener 4 nodos (cada nodo del nivel 2 tiene 2 hijos)
  • El nivel i puede contener hasta [matemática] 2 ^ i [/ matemática] nodos

Entonces la respuesta sería

  • Nivel 3: máximo 8 nodos
  • Nivel 4: máximo 16 nodos
  • Nivel 12: máximo 4096 nodos

Tenga en cuenta que para los árboles binarios balanceados, el número de nodos de un nivel es una función exponencial de la profundidad del nivel, razón por la cual los árboles de búsqueda binarios balanceados se pueden usar para almacenar efectivamente los datos ordenados (inserción, eliminación y recuperación todos ejecutados en [matemática ] O (log (n)) [/ math]).

Nivel 0: 2 ^ 0 (raíz)

1t s nivel: 2 * 2 ^ 0 = 2 ^ 1

2do nivel: 2 * 2 ^ 1 = 2 ^ 2

3er nivel: 2 * 2 ^ 2 = 2 ^ 3 nodos

nivel n: 2 * 2 ^ (n-1) = 2 ^ n nodos

Puede ser que su definición de nivel sea única en comparación con la mía, porque comienzo a contar en cero.

More Interesting

¿Qué es el recorrido NAT y por qué debería usarlo?

Cómo escribir un programa para implementar la búsqueda binaria

Si hay una matriz de 101 números que consiste en números del 1 al 100 con el número repetido, ¿cómo encuentra el número repetido en el número mínimo de iteraciones (en el programa C)?

¿Cuál es el algoritmo utilizado por Google para la búsqueda por voz e imagen?

¿Cómo se puede calcular la mediana de una gran variedad de enteros sin mantener todos los valores en la memoria?

Descubrí el algoritmo de Dijkstra yo mismo. ¿Puedo decir que soy bueno en informática?

¿Cuánto tiempo te lleva programar un algoritmo razonablemente complicado?

Estoy comenzando un proyecto de clasificación de picos, ¿dónde encuentro datos sin procesar y / o simulados?

¿Qué es el algoritmo de transformación de Burrows-Wheeler y cómo se usa en aplicaciones del mundo real?

¿Qué viene después de aprender la biblioteca de plantillas estándar, las estructuras de datos y los algoritmos en C ++?

¿Es posible aplicar de manera eficiente algoritmos de aprendizaje automático para problemas de optimización combinatoria?

¿Dónde puedo encontrar una biblioteca de estructura de datos de gráficos dirigida, implementada en Javascript?

¿Cuál es la mejor manera de aprender estructuras de datos y cuáles son los libros para comprender esto fácilmente?

¿Qué es la notación O grande? ¿Y deberían saberlo los programadores principiantes?

¿Cómo se puede averiguar el número de veces que se repite una palabra en una cadena usando Java?