¿No es posible en un árbol de búsqueda binario que el sucesor de un elemento tenga más de un hijo?

Por sucesor, supongo sucesor de Inorder.

Entonces sí, es completamente posible que el sucesor interno de un elemento tenga más de un hijo.

El recorrido en orden del árbol anterior nos dará la lista ordenada:

10, 14, 19, 27, 31, 35, 42

Como puede verse en la lista, el sucesor de orden de 19 es 27. Y el nodo con datos 27 tiene dos hijos (14 y 35).

Su confusión puede surgir del hecho de que para encontrar el sucesor de orden de un elemento (digamos 27), buscamos el elemento más pequeño en su subárbol derecho (que es 31). Y dado que el elemento más pequeño estará en el extremo izquierdo, no tendrá un hijo izquierdo y, por lo tanto, puede tener 0 o 1 hijo.

Pero ese es solo un caso, el otro es en el que el elemento cuyo sucesor necesitamos encontrar no tiene un subárbol correcto (como 19). En ese caso, el sucesor de orden del elemento será el primer antepasado que está a la derecha del elemento mientras se desplaza hacia arriba hacia la raíz (en este caso, 27). Y puede tener 1 o 2 hijos.

¡Espero que esto ayude!

More Interesting

¿Está bien inicializar una matriz que contiene fracciones en c ++?

Cómo encontrar factorial de un número en O (logn) complejidad de tiempo

Tengo un muy buen conocimiento de C ¿Debo continuar con estructuras de datos o comenzar con C ++?

¿Es una mala idea usar Python para aprender algoritmos y programación competitiva?

¿Qué tan difícil es implementar un sitio web de reserva de boletos con un volumen máximo de 1 millón de boletos por hora durante ciertas horas del día?

¿Existen buenos libros o recursos para resolver problemas y algoritmos en C #, para la preparación de entrevistas SDET?

¿Hay algún modelo físico o fenómeno que permita resolver rápidamente los problemas NP-hard?

¿El laboratorio de codificación dexter es bueno para C / C ++?

¿Qué niveles de matemáticas están involucrados en la programación y las ciencias de la computación?

¿Puede alguien sin antecedentes de cálculo aprender estructuras de datos y algoritmos leyendo CLRS?

¿Cuál es la estructura de datos utilizada para realizar la recursividad?

¿Cómo resuelvo esta pregunta SPOJ.com - Problema XOINC?

¿Qué curso de Udemy es mejor para aprender estructuras de datos si ya he aprendido los conceptos básicos (matrices, estructuras, punteros, listas enlazadas)?

Dada una biblioteca que proporciona una coincidencia aproximada de cadenas, ¿cuáles son algunos procedimientos adicionales que pueden explicar una mejor coincidencia de cadenas?

Procesamiento de lenguaje natural: ¿Cuál es la mejor manera de detectar si un fragmento de texto es interrogativo?