Aplanar un árbol binario en una lista enlazada – Part 1

Dado un árbol binario, aclárelo en una lista enlazada en el lugar. No se permite el uso de estructuras de datos auxiliares. Después de aplanar, la izquierda de cada Node debe apuntar a NULL y la derecha debe contener el siguiente Node en orden previo. Ejemplos:   Input : 1 / \ 2 5 / \ … Continue reading «Aplanar un árbol binario en una lista enlazada – Part 1»

Combinar transacciones en hojas de banco en el orden en que ocurren, de modo que su suma siga siendo positiva

Dada una array arr[][] que consta de N listas que representan N transacciones, la tarea es fusionar las listas de transacciones dadas en el orden en que ocurren, de modo que en cualquier momento, la suma de las transacciones ya realizadas no sea negativo. Si se encuentra en negativo, imprima «-1» . De lo contrario, … Continue reading «Combinar transacciones en hojas de banco en el orden en que ocurren, de modo que su suma siga siendo positiva»

Diseño de estructura de datos para realizar las operaciones requeridas.

Diseñe una estructura de datos que pueda realizar las siguientes operaciones agregar() en O (n) getMinimum() en O(1) deleteMinimum() en O(1) Fuente: Entrevista de MakeMyTrip. Mantenga una lista enlazada con elementos en orden creciente. Mueve el cabezal a la siguiente posición en caso de eliminar la operación Min. Devuelve el primer elemento en caso de … Continue reading «Diseño de estructura de datos para realizar las operaciones requeridas.»

Eliminar todos los Nodes de la lista doblemente enlazada que sean mayores que un valor dado

Dada una lista doblemente enlazada que contiene N Nodes y un número X, la tarea es eliminar todos los Nodes de la lista que son mayores que el valor dado X. Ejemplos:   Entrada: 10 8 4 11 9, X = 9  Salida: 8 4 9  Explicación:   10 y 11 son mayores que 9. Entonces, … Continue reading «Eliminar todos los Nodes de la lista doblemente enlazada que sean mayores que un valor dado»

Eliminar cada k-ésimo Node de la lista enlazada

Dada una lista enlazada individualmente, su tarea es eliminar cada K-ésimo Node de la lista enlazada. Suponga que K siempre es menor o igual que la longitud de la lista enlazada. Ejemplos:  C++ // C++ program to delete every k-th Node of // a singly linked list. #include<bits/stdc++.h> using namespace std;    /* Linked list … Continue reading «Eliminar cada k-ésimo Node de la lista enlazada»

Contar pares en un árbol binario cuya suma es igual a un valor dado x

Dado un árbol binario que contiene n números distintos y un valor x . El problema es contar pares en el árbol binario dado cuya suma es igual al valor x dado . Ejemplos:  Input : 5 / \ 3 7 / \ / \ 2 4 6 8 x = 10 Output : 3 … Continue reading «Contar pares en un árbol binario cuya suma es igual a un valor dado x»

Resta de los Nodes alternos de la lista enlazada

Dada una lista enlazada. La tarea es imprimir la diferencia entre el primer Node en posición impar con la suma de todos los demás Nodes en posición impar. Ejemplos:   Entrada: 1 -> 8 -> 3 -> 10 -> 17 -> 22 -> 29 -> 42  Salida: -48  Nodes alternativos: 1 -> 3 -> 17 -> … Continue reading «Resta de los Nodes alternos de la lista enlazada»

Genere una array a partir de una array dispersa dada usando una lista enlazada y reconstruya la array dispersa

Dada una array dispersa mat[][] de dimensiones N*M , la tarea es construir y representar la array original utilizando una lista enlazada y reconstruir la array dispersa dada . Ejemplos: Entrada: mat[][] = {{0, 1, 0, 0, 0}, {0, 1, 0, 0, 0}, {0, 0, 2, 0, 0}, {0, 3, 0, 0, 4}, {0, 0, … Continue reading «Genere una array a partir de una array dispersa dada usando una lista enlazada y reconstruya la array dispersa»

Suma de dos polinomios usando Lista enlazada circular

Dados dos polinomios representados por una lista enlazada circular , la tarea es sumar estos dos polinomios sumando los coeficientes de las potencias de la misma variable.  Nota: En polinomios dados, el término que contiene la mayor potencia de x irá primero. Ejemplos: Entrada:  1.er número = 5x^2 * y^1 + 4x^1 * y^2 + … Continue reading «Suma de dos polinomios usando Lista enlazada circular»

Rotación en el sentido de las agujas del reloj de la lista doblemente enlazada por N lugares

Dada una lista doblemente enlazada y un número entero N , la tarea es rotar la lista enlazada en el sentido de las agujas del reloj por N Nodes. Ejemplos:   Entrada: N = 2   Producción:     Enfoque: para rotar la lista doblemente enlazada, primero verifique si el N dado es mayor que la longitud de … Continue reading «Rotación en el sentido de las agujas del reloj de la lista doblemente enlazada por N lugares»