Dado un conjunto etiquetado de nodos, ¿podemos ‘siempre’ construir un árbol de búsqueda binario (BST) para ellos?

¡Hola!

Supongo que por etiquetado, quiere decir que cada nodo tiene una “clave” que es un número. Si es así, entonces sí, siempre puede construir un BST utilizando una función Insert ().

Un árbol de búsqueda binaria (BST) es un árbol binario con dos propiedades que se satisfacen en cada nodo:

  1. Cada nodo en el subárbol izquierdo de v tiene una clave menor o igual que la clave del nodo v .
  2. Cada nodo en el subárbol derecho de v tiene una clave mayor que la clave del nodo v .

Cualquier árbol binario con las dos propiedades anteriores es un BST. Sin embargo, el BST que cree no necesita ser de altura equilibrada . Con eso quiero decir que la altura del BST (que tiene n nodos) no necesita ser O (log n) . Por lo tanto, la operación de búsqueda puede llevar más tiempo que O (log n) (recuerde, la complejidad del tiempo para Search () e Insert () es O (h) donde h es la altura del BST).

Si desea un árbol de altura equilibrada, eche un vistazo a Red Black Tree.

Espero que esto ayude.

More Interesting

¿Hay alguna relación de recurrencia famosa aparte de Fibonacci?

¿Cómo se construye exactamente una estructura de datos de árbol en JavaScript?

¿Es un árbol binario perfecto también un árbol binario completo?

¿Cuál es la razón por la cual las compañías gigantes (por ejemplo, Google o Microsoft) hacen preguntas típicas como el árbol de búsqueda binario o el algoritmo tradicional o preguntas como la complejidad del algoritmo? ¿Cuál es el propósito? La mayoría de ellos no se usan en la vida real.

¿Qué es el ordenamiento binario?

¿Por qué sigo fallando la introducción a los algoritmos en la escuela de posgrado?

¿Cómo puede un algoritmo RLS utilizar el filtro Wiener como bloque FIR (M-tap)?

¿Cuáles son los mejores algoritmos de selección de apareamiento en informática evolutiva?

¿Cuáles son algunos algoritmos fáciles de implementar para la localización basada en características o puntos de referencia de robots móviles 2-D?

Cómo convertir el ciclo while en declaraciones if

¿Ha cambiado recientemente el algoritmo de Quora?

¿Cómo imprimir todos los N dígitos (N es un número par) de un número Torn con una complejidad menor que O (N ^ 2)? ¿Qué algoritmo debo usar?

Recientemente llegué a un llamado indicador de opciones binarias del sitio web 'www.investoo.com' que afirma una tasa de éxito del 83% al predecir el resultado de las opciones binarias. ¿Es una estafa?

¿Qué es el algoritmo em, cómo se hace paso a paso?

En programación de computadoras, ¿por qué es importante la clasificación? ¿Cuándo se utilizan los algoritmos de clasificación en la codificación real?