Multiplicación en array: consulta de actualización de rango en O (1)

Considere una array A[] de enteros y los siguientes dos tipos de consultas.   update(l, r, x): multiplica x por todos los valores de A[l] a A[r] (ambos inclusive). printArray(): Imprime la array modificada actual. Ejemplos:   Input: A[] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1} update(0, 2, 2) update(1, 4, 3) print() … Continue reading «Multiplicación en array: consulta de actualización de rango en O (1)»

Árboles de ondas | Introducción

Un árbol de ondículas es una estructura de datos que divide recursivamente un flujo en dos partes hasta que nos quedan datos homogéneos. El nombre deriva de una analogía con la transformada wavelet para señales, que descompone recursivamente una señal en componentes de baja y alta frecuencia. Los árboles de wavelet se pueden usar para … Continue reading «Árboles de ondas | Introducción»

Kth ancestro de un Node en un árbol N-ario utilizando la técnica de elevación binaria

Dado un vértice V de un árbol N-ario y un número entero K , la tarea es imprimir el Kth ancestro del vértice dado en el árbol. Si no existe ningún ancestro de este tipo, imprima -1 . Ejemplos:   Entrada: K = 2, V = 4   Salida: 1  2º padre del vértice 4 es 1 … Continue reading «Kth ancestro de un Node en un árbol N-ario utilizando la técnica de elevación binaria»

Consulta para encontrar la longitud del subarreglo más largo que consiste solo en 1s

Dada una array binaria arr[] de tamaño N y una array 2D Q[][] que contiene K consultas de los siguientes dos tipos: 1 : Imprime la longitud del subarreglo más largo que consta de solo 1 s. 2 X : Voltee el elemento en el índice X ( indexación basada en 1 ), es decir, … Continue reading «Consulta para encontrar la longitud del subarreglo más largo que consiste solo en 1s»

Consultas de rango de array para contar números poderosos con actualizaciones

Dada una array de N enteros, la tarea es realizar las siguientes dos operaciones en la array dada:   consulta (L, R) : imprime el número de números poderosos en el subarreglo de L a R.  update (i, x) : actualiza el valor en el índice i a x, es decir, arr [i] = x   Un … Continue reading «Consultas de rango de array para contar números poderosos con actualizaciones»

Diferencia entre equilibrio de carga y carga compartida en un sistema distribuido – Part 1

Un sistema distribuido es un entorno informático en el que diferentes componentes están dispersos entre varios ordenadores (u otros dispositivos informáticos) conectados a una red. Estos dispositivos dividieron el trabajo y coordinaron sus esfuerzos para hacer el trabajo más rápido que si se hubiera asignado a un solo dispositivo. Balanceo de carga: El equilibrio de … Continue reading «Diferencia entre equilibrio de carga y carga compartida en un sistema distribuido – Part 1»

Particionamiento de espacio binario

La partición de espacio binario se implementa para subdividir recursivamente un espacio en dos conjuntos convexos mediante el uso de hiperplanos como particiones. Este proceso de subdivisión da lugar a la representación de objetos dentro del espacio en forma de estructura de datos de árbol conocida como BSP Tree. La partición del espacio binario surgió … Continue reading «Particionamiento de espacio binario»

Programa Javascript para 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) and … Continue reading «Programa Javascript para contar inversiones de tamaño tres en una array dada»

Implementación de Page Rank utilizando el método Random Walk en Python

Prerrequisito: Algoritmo de rango de página e implementación , recorrido aleatorio En las Redes Sociales el page rank es un tema muy importante. Básicamente, el rango de página no es más que cómo se clasifican las páginas web según su importancia y relevancia de búsqueda. Todos los motores de búsqueda utilizan el ranking de páginas. … Continue reading «Implementación de Page Rank utilizando el método Random Walk en Python»

Barabasi Albert Graph (para modelos sin escala)

El artículo actual trataría los conceptos relacionados con las redes complejas que utilizan la biblioteca Networkx de python. Es un paquete de software en lenguaje Python para la creación, manipulación y estudio de la estructura, dinámica y función de redes complejas. Con NetworkX puede cargar y almacenar redes en formatos de datos estándar y no … Continue reading «Barabasi Albert Graph (para modelos sin escala)»