Suma de todos los Nodes con valores más pequeños a una distancia K de un Node dado en un BST

Dado un árbol de búsqueda binario , un Node objetivo en el BST y un valor entero K , la tarea es encontrar la suma de todos los Nodes que están a una distancia K del Node objetivo cuyo valor es menor que el Node objetivo. Ejemplos: Entrada: objetivo = 7, K = 2 Salida: … Continue reading «Suma de todos los Nodes con valores más pequeños a una distancia K de un Node dado en un BST»

Encuentre el Node con el valor máximo en un árbol de búsqueda binaria

Dado un árbol de búsqueda binario, la tarea es encontrar el Node con el valor máximo en un BST.  Para el árbol de arriba, comenzamos con 20, luego nos movemos a la derecha hasta 22. Seguimos moviéndonos a la derecha hasta que vemos NULL. Dado que la derecha de 22 es NULL, 22 es el … Continue reading «Encuentre el Node con el valor máximo en un árbol de búsqueda binaria»

Mediana de ventana deslizante en una array

Dada una array de enteros arr[] y un entero k , la tarea es encontrar la mediana de cada ventana de tamaño k comenzando desde la izquierda y moviéndose hacia la derecha una posición cada vez. Ejemplos: Entrada: arr[] = {-1, 5, 13, 8, 2, 3, 3, 1}, k = 3 Salida: 5 8 8 … Continue reading «Mediana de ventana deslizante en una array»

Producto máximo de subsecuencia bitónica de tamaño 3

Dada una array arr[] de enteros positivos de tamaño N , la tarea es encontrar el producto máximo de la subsecuencia bitónica de tamaño 3. Subsecuencia bitónica: subsecuencia en la que los elementos están primero en orden creciente y luego en orden decreciente. Los elementos en la subsecuencia siguen este orden arr[i] < arr[j] > … Continue reading «Producto máximo de subsecuencia bitónica de tamaño 3»

Imprima los elementos más grandes presentes en el lado izquierdo de cada elemento de la array

Dada una array arr[] que consta de N enteros distintos, la tarea es imprimir para cada elemento de la array, todos los elementos mayores presentes a su izquierda. Ejemplos: Entrada: arr[] = {5, 3, 9, 0, 16, 12} Salida: 5:  3: 5 9:  0: 9 5 3 16:  12: 16 Entrada: arr[] = {1, 2, … Continue reading «Imprima los elementos más grandes presentes en el lado izquierdo de cada elemento de la array»

Número de pares con una suma dada en un árbol de búsqueda binaria

Dado un árbol de búsqueda binario y un número X . La tarea es encontrar el número de pares distintos de Nodes distintos en BST con una suma igual a X . No hay dos Nodes que tengan los mismos valores. Ejemplos:  Input : X = 5 5 / \ 3 7 / \ / … Continue reading «Número de pares con una suma dada en un árbol de búsqueda binaria»

Aplanar BST a lista ordenada | orden creciente

Dado un árbol de búsqueda binario, la tarea es aplanarlo en una lista ordenada. Precisamente, el valor de cada Node debe ser menor que los valores de todos los Nodes a su derecha, y su Node izquierdo debe ser NULL después del aplanamiento. Debemos hacerlo en O(H) espacio extra donde ‘H’ es la altura de … Continue reading «Aplanar BST a lista ordenada | orden creciente»

La ruta más corta en Matrix desde la esquina superior izquierda hasta la esquina inferior derecha con vecinos que superan como máximo K

Dada una array mat[][] y un entero K, la tarea es encontrar la longitud del camino más corto en una array desde la esquina superior izquierda hasta la esquina inferior derecha tal que la diferencia entre los Nodes vecinos no exceda K. Ejemplo: Entrada: mat = {{-1, 0, 4, 3}, K = 4, src = … Continue reading «La ruta más corta en Matrix desde la esquina superior izquierda hasta la esquina inferior derecha con vecinos que superan como máximo K»

Encuentre el Node con valor mínimo en un árbol de búsqueda binaria – Part 1

Esto es bastante simple. Simplemente atraviese el Node de la raíz a la izquierda de forma recursiva hasta que la izquierda sea NULL. El Node cuya izquierda es NULL es el Node con valor mínimo.   C++ //C++ program to find minimum value node in binary search Tree.  #include <bits/stdc++.h>  using namespace std;     /* A … Continue reading «Encuentre el Node con valor mínimo en un árbol de búsqueda binaria – Part 1»

conjunto vs unordered_set en C++ STL

Requisito previo: establecido en C++ , unordered_set en C++ Diferencias:  | set | unordered_set ——————————————————— Ordering | increasing order | no ordering | (by default) | Implementation | Self balancing BST | Hash Table | like Red-Black Tree | search time | log(n) | O(1) -> Average | | O(n) -> Worst Case Insertion time … Continue reading «conjunto vs unordered_set en C++ STL»