Triplete con una suma dada en BST | conjunto 2

Dado un árbol de búsqueda binario y un entero X , la tarea es encontrar si existe un triplete con suma X. Escriba Sí o No según corresponda. Tenga en cuenta que los tres Nodes pueden no ser necesariamente distintos. Ejemplos:   Input: X = 15 5 / \ 3 7 / \ / \ 2 … Continue reading «Triplete con una suma dada en BST | conjunto 2»

Experiencia de entrevista de MakeMyTrip | Conjunto 8 (en el campus)

MakeMyTrip visitó recientemente nuestro campus. Fueron 4 rondas. Ronda en línea (1 hora) Esta ronda constaba de 20 preguntas de aptitud y 3 preguntas de codificación. Preguntas de codificación: 1. Encuentra ‘x’ en la ecuación. La entrada tiene la forma de una string. La ecuación consistía únicamente en un operador de suma y 2 enteros … Continue reading «Experiencia de entrevista de MakeMyTrip | Conjunto 8 (en el campus)»

Cómo insertar strings en un árbol AVL

AVL Tree es un árbol de búsqueda binaria (BST) autoequilibrado donde la diferencia entre las alturas de los subárboles izquierdo y derecho no puede ser más de uno para todos los Nodes. Ejemplos: El árbol anterior es AVL porque las diferencias entre las alturas de los subárboles izquierdo y derecho para cada Node son menores … Continue reading «Cómo insertar strings en un árbol AVL»

Predecesor y sucesor en orden para una clave dada en BST

Hay BST dado con el Node raíz con la parte clave solo como número entero. La estructura de cada Node es la siguiente: C++ struct Node {     int key;     struct Node *left, *right ; }; Java static class Node {     int key;     Node left, right ; };   // This code is contributed by gauravrajput1 … Continue reading «Predecesor y sucesor en orden para una clave dada en BST»

Consultas de rango de strings para contar el número de caracteres distintos con actualizaciones

Dada una string S de longitud N, y Q consultas del siguiente tipo: Tipo 1: 1 i X Actualiza el i-ésimo carácter de la string con el carácter dado, X. Tipo 2: LR Cuenta el número de caracteres distintos en el rango dado [L, R]. Restricción: 1<=N<=500000 1<=Q<20000 |S|=N La string S contiene solo letras … Continue reading «Consultas de rango de strings para contar el número de caracteres distintos con actualizaciones»

Número total de posibles árboles binarios de búsqueda y árboles binarios con n claves

Número total de árboles binarios de búsqueda posibles con n claves diferentes (countBST(n)) = número catalán Cn = (2n)! / ((n + 1)! * n!) Para n = 0, 1, 2, 3,… los valores de los números catalanes son 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862,…. También lo son los números de … Continue reading «Número total de posibles árboles binarios de búsqueda y árboles binarios con n claves»

Impresión ordenada de una array dada que representa un BST

Dada una array que almacena un árbol de búsqueda binario completo, escriba una función que imprima eficientemente la array dada en orden ascendente. Por ejemplo, dada una array [4, 2, 5, 1, 3], la función debe imprimir 1, 2, 3, 4, 5  Solución: El recorrido en orden de BST lo imprime en orden ascendente. El único … Continue reading «Impresión ordenada de una array dada que representa un BST»

Eliminar todos los Nodes hoja del árbol de búsqueda binaria

Hemos proporcionado un árbol de búsqueda binario y queremos eliminar los Nodes hoja del árbol de búsqueda binario.  Ejemplos:  C++ // C++ program to delete leaf Node from // binary search tree. #include <bits/stdc++.h> using namespace std;   struct Node {     int data;     struct Node* left;     struct Node* right; };   // Create a newNode … Continue reading «Eliminar todos los Nodes hoja del árbol de búsqueda binaria»

¿Cómo implementar la clave de disminución o la clave de cambio en el árbol de búsqueda binaria?

Dado un árbol de búsqueda binario, escriba una función que tome los tres siguientes como argumentos:  raiz de arbol  Valor clave antiguo  Nuevo valor clave  La función debe cambiar el valor de la clave anterior al valor de la clave nueva. La función puede suponer que el valor-clave antiguo siempre existe en el árbol de … Continue reading «¿Cómo implementar la clave de disminución o la clave de cambio en el árbol de búsqueda binaria?»

Elemento máximo entre dos Nodes de BST

Dada una array de N elementos y dos números enteros A, B que pertenecen a la array dada. Cree un árbol de búsqueda binaria insertando elementos de arr[0] a arr[n-1]. La tarea es encontrar el elemento máximo en el camino de A a B. Ejemplos:  Input : arr[] = { 18, 36, 9, 6, 12, … Continue reading «Elemento máximo entre dos Nodes de BST»