Árbol rojo negro vs árbol AVL

En esta publicación, compararemos Red-Black Tree y AVL Tree.  Árbol negro rojo :  Propiedades :   El autoequilibrio se proporciona pintando cada Node con dos colores (rojo o negro). Cuando se modifica el árbol, se reorganiza y pinta un nuevo árbol. Requiere 1 bit de información de color para cada Node en el árbol. Complejidad temporal: … Continue reading «Árbol rojo negro vs árbol AVL»

¿Cómo ordenar una gran array con muchas repeticiones?

Considere una array grande donde los elementos son de un conjunto pequeño y en cualquier rango, es decir, hay muchas repeticiones. ¿Cómo ordenar eficientemente la array?   Example: Input: arr[] = {100, 12, 100, 1, 1, 12, 100, 1, 12, 100, 1, 1} Output: arr[] = {1, 1, 1, 1, 1, 12, 12, 12, 100, 100, … Continue reading «¿Cómo ordenar una gran array con muchas repeticiones?»

Encuentre el valor mayor más cercano para cada elemento en la array

Dada una array de enteros, encuentre el elemento mayor más cercano para cada elemento. Si no hay un elemento mayor, imprima -1 Ejemplos:   Entrada: arr[] = {10, 5, 11, 6, 20, 12}  Salida: 11 6 12 10 -1 20 Entrada: arr[] = {10, 5, 11, 10, 20, 12}  Salida: 11 10 12 11 -1 20   … Continue reading «Encuentre el valor mayor más cercano para cada elemento en la array»

Cuente los elementos más pequeños en el lado derecho

Escriba una función para contar el número de elementos más pequeños a la derecha de cada elemento en una array. Dada una array no ordenada arr[] de enteros distintos, construya otra array countSmaller[] tal que countSmaller[i] contenga el recuento de elementos más pequeños en el lado derecho de cada elemento arr[i] en la array. Ejemplos:  … Continue reading «Cuente los elementos más pequeños en el lado derecho»

Implementación de AVL Tree usando gráficos en C++

Los árboles AVL son árboles de búsqueda binarios autoequilibrados donde la diferencia entre las alturas de los subárboles izquierdo y derecho no puede ser más de uno para todos los Nodes. A continuación se muestra el ejemplo del árbol AVL: En este artículo, implementaremos el concepto de AVL Tree usando gráficos en C ++. Como … Continue reading «Implementación de AVL Tree usando gráficos en C++»

Encuentre el valor más cercano para cada elemento en la array

Dada una array de enteros, encuentre el elemento más cercano para cada elemento. Ejemplos: Entrada: arr[] = {10, 5, 11, 6, 20, 12} Salida: 6, -1, 10, 5, 12, 11 Entrada: arr[] = {10, 5, 11, 10, 20, 12} Salida: 5 -1 10 5 12 11 Una solución simple es ejecutar dos bucles anidados. Elegimos … Continue reading «Encuentre el valor más cercano para cada elemento en la array»

Clasificación de árbol – Part 1

La clasificación de árbol es un algoritmo de clasificación que se basa en la estructura de datos del árbol de búsqueda binaria . Primero crea un árbol de búsqueda binario a partir de los elementos de la lista o array de entrada y luego realiza un recorrido en orden en el árbol de búsqueda binario … Continue reading «Clasificación de árbol – Part 1»

Inserción, búsqueda y eliminación en árboles AVL que contienen un puntero de Node principal

El árbol AVL 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. La inserción y eliminación en árboles AVL se han discutido en el artículo anterior . En este artículo, se analizan las operaciones … Continue reading «Inserción, búsqueda y eliminación en árboles AVL que contienen un puntero de Node principal»

El valor mayor o igual más cercano en el lado izquierdo para cada elemento en la array

Dada una array de enteros, encuentre el más cercano (sin considerar la distancia, sino el valor) mayor o el mismo valor a la izquierda de cada elemento. Si un elemento no tiene un valor mayor o igual en el lado izquierdo, imprima -1. Ejemplos:   Entrada: arr[] = {10, 5, 11, 6, 20, 12}  Salida: -1, … Continue reading «El valor mayor o igual más cercano en el lado izquierdo para cada elemento en la array»

Encuentre el elemento N’th en un conjunto formado por la suma de dos arrays

Dadas dos arrays ordenadas, podemos obtener un conjunto de sumas (agregue un elemento del primero y otro del segundo). Encuentre el elemento N en los elementos del conjunto formado considerados en orden ordenado. Nota: el conjunto de sumas debe tener elementos únicos. Ejemplos:  Input: arr1[] = {1, 2} arr2[] = {3, 4} N = 3 … Continue reading «Encuentre el elemento N’th en un conjunto formado por la suma de dos arrays»