Árbol palindrómico | Introducción e implementación

Nos encontramos con varios problemas como el palíndromo de longitud máxima en una string, el número de substrings palindrómicas y muchos más problemas interesantes sobre las substrings palindrómicas. La mayoría de estos problemas palindrómicos de substrings tienen alguna solución DP O(n 2 ) (n es la longitud de la string dada) o luego tenemos un … Continue reading «Árbol palindrómico | Introducción e implementación»

Clasificación de Algoritmos con Ejemplos

Hay muchas formas de clasificar los algoritmos y algunas de ellas se muestran a continuación: Método de implementación Método de diseño Otras clasificaciones Clasificación por Método de Implementación: 1. Recursividad o Iteración Un algoritmo recursivo es aquel que se llama a sí mismo repetidamente hasta que se satisface una condición base. Es un método común … Continue reading «Clasificación de Algoritmos con Ejemplos»

Implementación de B*-Trees en C++

El árbol B* de orden m es un árbol de búsqueda que está vacío o que cumple tres propiedades: El Node raíz tiene un mínimo de dos y un máximo de 2 pisos ((2m-2)/3) +1 hijos Otros Nodes internos tienen el piso mínimo ((2m-1)/3) y máximo m niños Todos los Nodes externos están en el … Continue reading «Implementación de B*-Trees en C++»

Conjunto ordenado y GNU C++ PBDS

Requisito previo : conocimiento básico de STL y estructura de conjuntos de datos . Sobre el conjunto ordenado El conjunto ordenado es una estructura de datos basada en políticas en g ++ que mantiene los elementos únicos en orden. Realiza todas las operaciones realizadas por la estructura de datos establecida en STL en complejidad log(n) … Continue reading «Conjunto ordenado y GNU C++ PBDS»

sklearn.Binarizer() en Python

sklearn.preprocessing.Binarizer() es un método que pertenece al módulo de preprocesamiento. Desempeña un papel clave en la discretización de valores de características continuas. Ejemplo #1:  Los datos continuos de valores de píxeles de una imagen en escala de grises de 8 bits tienen valores que oscilan entre 0 (negro) y 255 (blanco) y se necesita que sea … Continue reading «sklearn.Binarizer() en Python»

Árbol de segmentos | Conjunto 2 (consulta de rango máximo con actualización de Node)

Dada una array arr[0 . . . n-1]. Encuentre el máximo de elementos del índice l a r donde 0 <= l <= r <= n-1. Además, cambie el valor de un elemento específico de la array a un nuevo valor x. Necesitamos hacer arr[i] = x donde 0 <= i <= n-1 y luego … Continue reading «Árbol de segmentos | Conjunto 2 (consulta de rango máximo con actualización de Node)»

Encuentra el número de Islas | Conjunto 2 (usando conjunto disjunto)

Dada una array booleana 2D, encuentre el número de islas. Un grupo de unos conectados forma una isla. Por ejemplo, la siguiente array contiene 5 islas  {1, 1, 0, 0, 0}, {0, 1, 0, 0, 1}, {1, 0, 0, 1, 1}, {0, 0, 0, 0, 0}, {1, 0, 1, 0, 1} Una celda en la … Continue reading «Encuentra el número de Islas | Conjunto 2 (usando conjunto disjunto)»

Árbol rojo-negro | Grupo 3 (Borrar)

Hemos discutido los siguientes temas sobre el árbol rojo-negro en publicaciones anteriores. Recomendamos encarecidamente hacer referencia a la siguiente publicación como requisito previo de esta publicación. Introducción al árbol rojo y negro Árbol rojo y  negro Insertar Inserción frente a eliminación:  al igual que la inserción, el cambio de color y las rotaciones se utilizan … Continue reading «Árbol rojo-negro | Grupo 3 (Borrar)»

Contar inversiones de tamaño tres en una array dada

Dada una array arr[] de tamaño n. Tres elementos arr[i], arr[j] y arr[k] forman una inversión de tamaño 3 si a[i] > a[j] >a[k] e i < j < k. Encuentre el número total de inversiones de tamaño 3. Ejemplo :  Input: {8, 4, 2, 1} Output: 4 The four inversions are (8,4,2), (8,4,1), (4,2,1) … Continue reading «Contar inversiones de tamaño tres en una array dada»