Contando inversiones en una array usando un árbol de segmentos

Dada una array de enteros arr , la tarea es contar el número de inversiones en la array. Si A[i] > A[j] e i < j entonces el par (A[i], A[j]) es parte de una inversión. Ejemplos:   Entrada: arr[] = {8, 4, 2, 1}  Salida: 6 Entrada: arr[] = {3, 1, 2}  Salida: 2   Acercarse:   Cree … Continue reading «Contando inversiones en una array usando un árbol de segmentos»

Busque una string en el diccionario con un prefijo y un sufijo determinados para consultas Q

Dada una array arr[] que consta de N strings y Q consultas en forma de prefijo y sufijo de dos strings , la tarea de cada consulta es encontrar cualquier string en la array dada con el prefijo y el sufijo dados . Si no existe tal string, imprima «-1» . Ejemplos: Entrada: arr[] = … Continue reading «Busque una string en el diccionario con un prefijo y un sufijo determinados para consultas Q»

Encuentre el subarreglo máximo XOR en un arreglo dado

Dada una array de enteros. encuentre el valor máximo del subarreglo XOR en el arreglo dado. Complejidad del tiempo esperado O(n). Ejemplos:  Entrada: arr[] = {1, 2, 3, 4} Salida: 7 Explicación : el subarreglo {3, 4} tiene un valor XOR máximo Entrada: arr[] = {8, 1, 2, 12, 7, 6} Salida: 15 Explicación : … Continue reading «Encuentre el subarreglo máximo XOR en un arreglo dado»

Aplicación de árbol de sufijos 1: comprobación de substrings

Dada una string de texto y una string de patrones, compruebe si existe un patrón en el texto o no. Ya se han discutido algunos algoritmos de búsqueda de patrones ( KMP , Rabin-Karp , Naive Algorithm , Finite Automata ) que se pueden usar para esta verificación. Aquí discutiremos el algoritmo basado en el árbol … Continue reading «Aplicación de árbol de sufijos 1: comprobación de substrings»

Ordenar números almacenados en diferentes máquinas

Dadas N máquinas. Cada máquina contiene algunos números en forma ordenada. Pero la cantidad de números que tiene cada máquina no es fija. Muestra los números de toda la máquina en forma ordenada no decreciente. Ejemplo: Machine M1 contains 3 numbers: {30, 40, 50} Machine M2 contains 2 numbers: {35, 45} Machine M3 contains 5 … Continue reading «Ordenar números almacenados en diferentes máquinas»

Formación de palabras usando la concatenación de dos palabras del diccionario

Dado un diccionario, averigüe si la palabra dada puede estar formada por dos palabras en el diccionario. Nota: Las palabras en el diccionario deben ser únicas y la palabra a formar no debe ser una repetición de las mismas palabras que están presentes en el Trie. Ejemplos:  Input : dictionary[] = {«news», «abcd», «tree», «geeks», «paper»} … Continue reading «Formación de palabras usando la concatenación de dos palabras del diccionario»

tratamiento | Conjunto 2 (Implementación de Buscar, Insertar y Eliminar)

Recomendamos encarecidamente consultar el conjunto 1 como requisito previo de esta publicación. Treap (un árbol de búsqueda binaria aleatoria) En esta publicación, se analizan las implementaciones de búsqueda, inserción y eliminación. Búsqueda:  Igual que la búsqueda BST estándar . La prioridad no se considera para la búsqueda.   CPP // C function to search a given … Continue reading «tratamiento | Conjunto 2 (Implementación de Buscar, Insertar y Eliminar)»

Programa en C++ para implementar la tabla de símbolos

Prerrequisito: Tabla de Símbolos Una tabla de símbolos es una estructura de datos utilizada por el compilador, donde cada identificador en el código fuente del programa se almacena junto con la información asociada con él en relación con su declaración. Almacena el identificador así como sus atributos asociados como alcance, tipo, número de línea de … Continue reading «Programa en C++ para implementar la tabla de símbolos»

Programa para implementar Tabla Hash usando Direccionamiento Abierto

La tarea es diseñar una estructura de datos de tabla hash general con caso de colisión manejado y que admita las funciones Insert() , Find() y Delete() . Ejemplos: Suponga que las operaciones se realizan en una array de pares, {{1, 5}, {2, 15}, {3, 20}, {4, 7}}. Y una array de capacidad 20 se … Continue reading «Programa para implementar Tabla Hash usando Direccionamiento Abierto»

Encuentre un par de la array dada con el valor máximo de nCr

Dada una array arr[] de n enteros positivos. La tarea es encontrar los elementos arr[i] y arr[j] del arreglo tal que arr[i] C arr[j] sea el máximo posible. En caso de más de 1 par válido, imprima cualquiera de ellos. Ejemplos:   Entrada: arr[] = {3, 1, 2}  Salida: 3 2  3 C 1 = 3  … Continue reading «Encuentre un par de la array dada con el valor máximo de nCr»