¿Cuál es la complejidad temporal de inorder, postorder y preorden transversal de árboles binarios en estructuras de datos? ¿Es O (n) u O (log n) o O (n^2)?Complejidades de recorridos de árbol binario
Respuesta
O(n)
, porque atraviesa cada nodo una vez. O más bien, la cantidad de trabajo que realiza para cada nodo es constante (no depende del resto de los nodos).
Travesal es O (n) para cualquier orden, porque está golpeando cada nodo una vez. La búsqueda es donde puede ser menor que O (n) SI el árbol tiene algún tipo de esquema de organización (es decir, árbol de búsqueda binario).
O (n), yo diría. Estoy haciendo un árbol equilibrado, aplicable a todos los árboles. Suponiendo que utiliza la recursividad,
T (n) = 2 * T (n/2) + 1 ----------> (1)
T (n/2) para el subárbol izquierdo y T (n/2) para el subárbol derecho y '1' para verificar el caso base.
Al simplificar (1) puede probar que el recorrido (ya sea en orden o preorden o pedido posterior) es de orden O (n).
Los recorridos en orden, pedidos por adelantado y posteriores a la orden son recorridos en profundidad.
Para un gráfico, la complejidad de un primer recorrido de profundidad es O (n + m), donde n es el número de nodos, y m es el número de bordes.
Dado que un árbol binario es también un gráfico, lo mismo se aplica aquí. La complejidad de cada uno de estos recorridos en profundidad es O (n + m).
Dado que el número de bordes que pueden originarse de un nodo está limitado a 2 en el caso de un árbol binario, el número máximo de bordes totales en un árbol binario es n-1, donde n es el número total de nodos .
La complejidad se convierte en O (n + n-1), que es O (n).
- 1. Travesía de orden de nivel de árbol binario
- 2. Transferencia de árbol binario
- 3. Árbol binario del árbol general
- 4. Haskell: Acoplar árbol binario
- 5. Altura del árbol binario
- 6. Árbol binario GraphViz árbol izquierdo y derecho
- 7. Creando árbol de suma de Scala árbol binario
- 8. Imagen de espejo de un árbol binario
- 9. Árbol binario de tramos de orden y de orden de nivel
- 10. Árbol binario usando PHP + MySQL
- 11. Cómo crear un árbol binario
- 12. Sumas equilibradas en árbol binario
- 13. Atravesando un árbol binario recursivamente
- 14. ¿Cómo implementar un árbol binario?
- 15. Almacenamiento de matriz eficiente para árbol binario
- 16. límite de impresión del árbol binario
- 17. Equilibrio de un árbol binario (AVL)
- 18. implementaciones nth_element Complejidades
- 19. menos unario y binario en Parse árbol
- 20. Encontrar un bucle en un árbol binario
- 21. Tabla hash vs Árbol binario balanceado
- 22. Recorrido de orden de nivel de un árbol binario
- 23. Diferentes estructuras de datos y Complejidades
- 24. ¿Cómo se hace un árbol de búsqueda binario en Clojure?
- 25. imprime un árbol binario en uno de sus lados
- 26. Búsqueda recursiva de un nodo en un árbol no binario
- 27. ¿Cómo copiar el directorio desde el árbol de fuentes al árbol binario?
- 28. Encuentra la mediana en O (1) en el árbol binario
- 29. ¿Se puede cruzar un árbol no binario en orden?
- 30. ¿Cómo construir un árbol no binario con o sin recursividad?
¿Qué estructuras de datos? ¿Árboles? ¿Qué tipo de árboles? –
Esta pregunta pertenece a http://cstheory.stackexchange.com/ –
@CommanderZ - no comencemos a dividir los pelos. –