Elemento más grande en un árbol N-ario

Dado un árbol N-ario que consta de N Nodes, la tarea es encontrar el Node que tiene el mayor valor en el árbol N -ario dado . Ejemplos: Aporte: Salida: 90 Explicación: El Node con el mayor valor en el árbol es 90. Aporte: Salida: 95 Explicación: El Node con el mayor valor en el … Continue reading «Elemento más grande en un árbol N-ario»

Recuento de Nodes en un árbol N-ario dado de modo que su subárbol sea un árbol binario

Dada una raíz de árbol N-ario , la tarea es encontrar el recuento de Nodes de modo que su subárbol sea un árbol binario. Ejemplo: Entrada: Árbol en la imagen de abajo  Salida: 11 Explicación: Los Nodes en los que el subárbol es un árbol binario son {2, 8, 10, 6, 7, 3, 1, 9, … Continue reading «Recuento de Nodes en un árbol N-ario dado de modo que su subárbol sea un árbol binario»

Tutorial sobre Árbol Binario

El árbol es una estructura de datos jerárquica . Un árbol binario es un árbol que tiene como máximo dos hijos. El Node que está a la izquierda del árbol binario se llama «hijo izquierdo» y el Node que está a la derecha se llama «hijo derecho». Además, el árbol más pequeño o el subárbol … Continue reading «Tutorial sobre Árbol Binario»

Recorridos de árboles (en orden, preorden y posorden)

A diferencia de las estructuras de datos lineales (array, lista enlazada, colas, pilas, etc.) que solo tienen una forma lógica de atravesarlos, los árboles se pueden recorrer de diferentes maneras. Las siguientes son las formas generalmente utilizadas para atravesar árboles. C++ // C++ program for different tree traversals #include <iostream> using namespace std;    /* … Continue reading «Recorridos de árboles (en orden, preorden y posorden)»

Recorrido de orden de niveles en zigzag de un árbol N-ario

Dado un árbol genérico que consta de N Nodes, la tarea es encontrar el recorrido de orden de niveles en zigzag del árbol dado. Ejemplos: Aporte: Salida: 1 3 2 4 5 6 7 8 Enfoque: El problema dado se puede resolver usando BFS Traversal . El enfoque es muy similar al de Level Order … Continue reading «Recorrido de orden de niveles en zigzag de un árbol N-ario»

Suma de bit a bit Y de la suma de todos los Nodes hoja y no hoja para cada nivel de un árbol binario

Dado un árbol binario que consta de N Nodes, la tarea es encontrar la suma de Bitwise AND de la suma de todos los Nodes hoja y la suma de todos los Nodes no hoja para cada nivel en el árbol dado. Ejemplos: Entrada: A continuación se muestra el árbol dado:         … Continue reading «Suma de bit a bit Y de la suma de todos los Nodes hoja y no hoja para cada nivel de un árbol binario»

Diferencia máxima de recuento de vértices blancos y negros en una ruta que contiene el vértice V

Dado un Árbol con N vértices y N – 1 arista donde los vértices están numerados de 0 a N – 1 , y un vértice V presente en el árbol. Se da que cada vértice en el árbol tiene asignado un color que es blanco o negro y los colores respectivos de los vértices … Continue reading «Diferencia máxima de recuento de vértices blancos y negros en una ruta que contiene el vértice V»

Recuento máximo de Nodes duplicados conectados en un árbol N-ario dado

Dado un árbol genérico tal que cada Node tiene un valor asociado, la tarea es encontrar el mayor número de Nodes conectados que tengan el mismo valor en el árbol. Dos Nodes están conectados si un Node es hijo de otro Node. Ejemplo: Entrada: Árbol en la imagen de abajo Salida: 4 Explicación: El grupo … Continue reading «Recuento máximo de Nodes duplicados conectados en un árbol N-ario dado»

Recorrido de árbol en orden sin recursividad

  Usar Stack es la forma obvia de atravesar el árbol sin recurrencia. A continuación se muestra un algoritmo para atravesar un árbol binario usando stack. Vea esto para la ejecución paso a paso del algoritmo.  1) Create an empty stack S. 2) Initialize current node as root 3) Push the current node to S … Continue reading «Recorrido de árbol en orden sin recursividad»

Inorder Tree Traversal sin recursividad y sin pila!

  Usando Morris Traversal, podemos atravesar el árbol sin usar la pila y la recursividad. La idea de Morris Traversal se basa en Threaded Binary Tree . En este recorrido, primero creamos enlaces al sucesor Inorder e imprimimos los datos usando estos enlaces, y finalmente revertimos los cambios para restaurar el árbol original.  1. Initialize … Continue reading «Inorder Tree Traversal sin recursividad y sin pila!»