Suma de rango y actualización en array: árbol de segmentos usando pila

Dada una array arr[] de N enteros. La tarea es hacer las siguientes operaciones:   Agregue un valor X a todo el elemento del índice A al B donde 0 ≤ A ≤ B ≤ N-1 . Encuentre la suma del elemento del índice L a R donde 0 ≤ L ≤ R ≤ N-1 antes … Continue reading «Suma de rango y actualización en array: árbol de segmentos usando pila»

Conversión de infijo a prefijo usando dos pilas

Infijo : una expresión se llama expresión infija si el operador aparece entre los operandos en la expresión. Simplemente de la forma (operando1 operador operando2). Ejemplo: (A+B) * (CD) Prefijo : una expresión se denomina expresión de prefijo si el operador aparece en la expresión antes de los operandos. Simplemente de la forma (operador operando1 operando2). Ejemplo: … Continue reading «Conversión de infijo a prefijo usando dos pilas»

Compruebe si una array determinada puede representar el recorrido de pedido previo del árbol de búsqueda binaria

Dada una array de números, devuelve verdadero si la array dada puede representar un recorrido de preorden de un árbol de búsqueda binario, de lo contrario, devuelve falso. La complejidad de tiempo esperada es O(n). Ejemplos: C++ // C++ program for an efficient solution to check if // a given array can represent Preorder traversal … Continue reading «Compruebe si una array determinada puede representar el recorrido de pedido previo del árbol de búsqueda binaria»

Comprobar si dos expresiones con paréntesis son iguales

Dadas dos expresiones en forma de strings. La tarea es compararlos y comprobar si son similares. Las expresiones consisten en letras minúsculas, ‘+’, ‘-‘ y ‘( )’. Ejemplos:  Input : exp1 = «-(a+b+c)» exp2 = «-a-b-c» Output : Yes Input : exp1 = «-(c+b+a)» exp2 = «-c-b-a» Output : Yes Input : exp1 = «a-b-(c-d)» … Continue reading «Comprobar si dos expresiones con paréntesis son iguales»

Contar números naturales cuyas permutaciones sean mayores que ese número

Hay algún número natural cuya permutación total es mayor o igual a ese número, por ejemplo. 123, cuyas permutaciones (123, 231, 321) son mayores o iguales a 123.  Dado un número natural n , la tarea es contar todos esos números de 1 a n.  Ejemplos:  Entrada: n = 15. Salida: 14 Explicación: 1, 2, … Continue reading «Contar números naturales cuyas permutaciones sean mayores que ese número»

Experiencia de entrevista de Microsoft | Set 151 (SDE-2 3,5 años de experiencia)

La ronda 1: Coloque todos los caracteres numéricos de la string antes de los caracteres alfabéticos. Usar intercambios mínimos y espacio O(1) y mantener el orden de los caracteres. La ronda 2: Mediana de flujo de números enteros. Discutir algo . Supersecuencia común más corta de 2 strings . Discutir la complejidad del tiempo recursivo … Continue reading «Experiencia de entrevista de Microsoft | Set 151 (SDE-2 3,5 años de experiencia)»

Número máximo de aristas que se eliminarán para contener exactamente K componentes conectados en el gráfico

Dado un grafo no dirigido G con N Nodes, M aristas y un número entero K , la tarea es encontrar la cantidad máxima de aristas que se pueden eliminar de modo que queden exactamente K componentes conectados después de la eliminación de las aristas. Si el gráfico no puede contener componentes de conexión K … Continue reading «Número máximo de aristas que se eliminarán para contener exactamente K componentes conectados en el gráfico»

Suma dos números representados por Stacks

Dados dos números N 1 y N 2 representados por dos pilas, de modo que sus dígitos más significativos estén presentes en la parte inferior de la pila, la tarea es calcular y devolver la suma de los dos números en forma de pila. Ejemplos:  Entrada: N 1 ={5, 8, 7, 4}, N 2 ={2, … Continue reading «Suma dos números representados por Stacks»

Compruebe si se puede seleccionar un triplete de edificios de forma que el tercer edificio sea más alto que el primero y más pequeño que el segundo.

Dada una array arr[] que consta de N enteros, donde cada elemento de la array representa la altura de un edificio situado en las coordenadas X , la tarea es verificar si es posible seleccionar 3 edificios, de modo que el tercer edificio seleccionado sea más alto que el primer edificio seleccionado y más bajo … Continue reading «Compruebe si se puede seleccionar un triplete de edificios de forma que el tercer edificio sea más alto que el primero y más pequeño que el segundo.»