Lista vinculada | Serie 1 (Introducción)

Al igual que las arrays, la lista enlazada es una estructura de datos lineal. A diferencia de las arrays, los elementos de la lista enlazada no se almacenan en una ubicación contigua; los elementos se vinculan mediante punteros. Incluyen una serie de Nodes conectados. Aquí, cada Node almacena los datos y la dirección del siguiente … Continue reading «Lista vinculada | Serie 1 (Introducción)»

Dividir una lista enlazada circular en dos mitades

Original Linked List Result Linked List 1 Result Linked List 2 Si hay un número impar de Nodes , la primera lista debe contener uno adicional.  Gracias a Geek4u por sugerir el algoritmo. 1) Almacene los punteros medio y último de la lista enlazada circular utilizando el algoritmo de Turtle y liebre. 2) Hacer la segunda mitad … Continue reading «Dividir una lista enlazada circular en dos mitades»

Combinar dos listas ordenadas (in situ)

Dadas dos listas ordenadas, combínelas para producir una lista ordenada combinada (sin usar espacio adicional). Ejemplos:  Input : head1: 5->7->9 head2: 4->6->8 Output : 4->5->6->7->8->9 Explanation: The output list is in sorted order. Input : head1: 1->3->5->7 head2: 2->4 Output : 1->2->3->4->5->7 Explanation: The output list is in sorted order. Hay diferentes soluciones discutidas en … Continue reading «Combinar dos listas ordenadas (in situ)»

Buscar un elemento en una lista doblemente enlazada

Dada una lista doblemente enlazada (DLL) que contiene N Nodes y un entero X , la tarea es encontrar la posición del entero X en la lista doblemente enlazada. Si no se encuentra dicha posición, imprima -1 . Ejemplos: Entrada: 15 <=> 16 <=> 8 <=> 7 <=> 13, X = 8  Salida: 3  Explicación: … Continue reading «Buscar un elemento en una lista doblemente enlazada»

Implementando una lista enlazada en Java usando Class

Requisito previo: estructura de datos de lista enlazada Al igual que las arrays, la lista enlazada es una estructura de datos lineal. A diferencia de las arrays, los elementos de la lista vinculada no se almacenan en la ubicación contigua, los elementos se vinculan mediante punteros como se muestra a continuación.  En Java, LinkedList se … Continue reading «Implementando una lista enlazada en Java usando Class»

Compara números representados por listas enlazadas

Dados los punteros a los Nodes principales de dos listas enlazadas. La tarea es comparar los números representados por las listas enlazadas. Los números representados por las listas pueden contener ceros a la izquierda.  Si los números son iguales, imprima 0 . Si el número representado por la primera lista enlazada es mayor que imprima … Continue reading «Compara números representados por listas enlazadas»

Modifique una lista circular doblemente enlazada de modo que cada Node almacene la suma de todos los Nodes excepto él mismo

Dada una lista circular doblemente enlazada que consta de N Nodes, la tarea es modificar cada Node de la lista enlazada dada de modo que cada Node contenga la suma de todos los Nodes excepto ese Node. Ejemplos: Entrada: 4 ↔ 5 ↔ 6 ↔7 ↔ 8 Salida: 26 ↔ 25 ↔ 24 ↔ 23 … Continue reading «Modifique una lista circular doblemente enlazada de modo que cada Node almacene la suma de todos los Nodes excepto él mismo»

Encuentra el medio de una lista enlazada individualmente Recursivamente

Dada una lista enlazada individualmente y la tarea es encontrar el medio de la lista enlazada. Ejemplos:   Input : 1->2->3->4->5 Output : 3 Input : 1->2->3->4->5->6 Output : 4 Ya hemos discutido la solución iterativa . En esta publicación se discute la solución iterativa. Cuente el número total de Nodes en la lista de manera recursiva … Continue reading «Encuentra el medio de una lista enlazada individualmente Recursivamente»

Combinar ordenación para lista doblemente enlazada

Dada una lista doblemente enlazada, escribe una función para ordenar la lista doblemente enlazada en orden creciente usando la ordenación por combinación. Por ejemplo, la siguiente lista doblemente enlazada debe cambiarse a {2, 4, 8, 10}. Ya se ha discutido la ordenación por combinación para la lista enlazada individualmente . El cambio importante aquí es … Continue reading «Combinar ordenación para lista doblemente enlazada»

Implementación de Deque usando lista doblemente enlazada

Deque o Double Ended Queue es una versión generalizada de la estructura de datos de Queue que permite insertar y eliminar en ambos extremos. En una publicación anterior , se discutió la implementación de Deque usando una array circular. Ahora, en esta publicación, vemos cómo implementamos Deque usando la lista doblemente enlazada .   Operaciones … Continue reading «Implementación de Deque usando lista doblemente enlazada»