Encuentre el primer carácter que no se repite de una secuencia de caracteres

Dada una secuencia de caracteres, encuentre el primer carácter que no se repite de la secuencia. Debe indicar el primer carácter que no se repite en el tiempo O (1) en cualquier momento. Si seguimos el primer enfoque discutido aquí , entonces necesitamos almacenar el flujo para que podamos atravesarlo una vez más para encontrar … Continue reading «Encuentre el primer carácter que no se repite de una secuencia de caracteres»

Programa de Python para encontrar el medio de una lista enlazada usando un recorrido

Dada una lista enlazada individualmente, busque el centro de la lista enlazada. Dada una lista enlazada individualmente, busque el centro de la lista enlazada. Por ejemplo, si la lista enlazada dada es 1->2->3->4->5, entonces la salida debería ser 3. Método 1: recorrer toda la lista enlazada y contar el no. de Nodes Ahora recorra la … Continue reading «Programa de Python para encontrar el medio de una lista enlazada usando un recorrido»

Encuentre los Nodes comunes en dos listas enlazadas individualmente

Dadas dos listas enlazadas, la tarea es encontrar el número de Nodes comunes en ambas listas enlazadas individualmente. Ejemplos: Entrada: Lista A = 3 -> 4 -> 12 -> 10 -> 17, Lista B = 10 -> 4 -> 8 -> 575 -> 34 -> 12 Salida: Número de Nodes comunes en ambas listas  = … Continue reading «Encuentre los Nodes comunes en dos listas enlazadas individualmente»

Agregue el dígito dado a un número almacenado en una lista vinculada

Dada una lista enlazada que representa un número entero donde cada Node es un dígito si el entero representado. La tarea es sumar un dígito dado N al entero representado. Ejemplos:  Entrada: 9 -> 9 -> 3 -> NULO, N = 7  Salida:  9 -> 9 -> 3 -> NULO  1 -> 0 -> 0 … Continue reading «Agregue el dígito dado a un número almacenado en una lista vinculada»

Reemplazar Nodes con duplicados en lista enlazada

Dada una lista enlazada que contiene algunos enteros aleatorios del 1 al n con muchos duplicados. Reemplace cada elemento duplicado que esté presente en la lista vinculada con los valores n+1, n+2, n+3 y así sucesivamente (comenzando de izquierda a derecha en la lista vinculada dada). Ejemplos:   Input : 1 3 1 4 4 2 … Continue reading «Reemplazar Nodes con duplicados en lista enlazada»

Intercambiar Nodes en una lista enlazada sin intercambiar datos

Dada una lista enlazada y dos claves en ella, intercambie Nodes por dos claves dadas. Los Nodes deben intercambiarse cambiando los enlaces. El intercambio de datos de Nodes puede ser costoso en muchas situaciones cuando los datos contienen muchos campos. Se puede suponer que todas las claves de la lista enlazada son distintas. Ejemplos:  C++ … Continue reading «Intercambiar Nodes en una lista enlazada sin intercambiar datos»

Convertir un árbol binario en una lista circular de enlaces dobles

Dado un árbol binario, conviértalo en una lista circular doblemente enlazada (in situ).   Los punteros izquierdo y derecho en los Nodes se utilizarán como punteros anterior y siguiente, respectivamente, en la Lista enlazada circular convertida. El orden de los Nodes en la Lista debe ser el mismo que en Inorder para el Árbol Binario dado. … Continue reading «Convertir un árbol binario en una lista circular de enlaces dobles»

Escribir una función para eliminar una lista enlazada

Algoritmo para C/C++: Iterar a través de la lista enlazada y eliminar todos los Nodes uno por uno. El punto principal aquí es no acceder al siguiente del puntero actual si se elimina el puntero actual. En Java, Python y JavaScript , se produce una recolección de basura automática, por lo que eliminar una lista … Continue reading «Escribir una función para eliminar una lista enlazada»

Ordenar una lista ordenada doblemente enlazada

Dada una lista doblemente enlazada que contiene n Nodes, donde cada Node está a lo sumo k alejado de su posición objetivo en la lista. El problema es ordenar la lista doblemente enlazada dada. Por ejemplo, consideremos k es 2, un Node en la posición 7 en la lista doblemente enlazada ordenada, puede estar en las … Continue reading «Ordenar una lista ordenada doblemente enlazada»

Encuentra la longitud del bucle en la lista enlazada

Escriba una función detectAndCountLoop() que verifique si una lista enlazada dada contiene un bucle y, si el bucle está presente, devuelve el recuento de Nodes en el bucle. Por ejemplo, el bucle está presente en la lista de enlaces a continuación y la longitud del bucle es 4. Si el bucle no está presente, la … Continue reading «Encuentra la longitud del bucle en la lista enlazada»