[ Foro de Pascal ]

listas

08-Apr-2014 14:25
Invitado (rina)
7 Respuestas

hola estoy iniciando el tema de listas enlazadas y tengo el siguiente planteamiento, por si alguien de este foro o el profesor puede ayudarme.
- realizar una funcion o procedimiento que permita concatenar dos listas.


08-Apr-2014 20:37
Luis Torres (+12)

Es lo más sencillo de hacer. Si las listas son L1 y L2, y L2 va a continuación de L1, bastará con ubicar el último nodo de L1 y hacer que su campo "siguiente" apunte o guarde la dirección de L2. Si estás trabajando con el TAD listas enlazadas, todo lo harías con una instrucción:

 
Ultimo(L1)^.siguiente:= L2;
 


Saludos.


08-Apr-2014 22:29
Invitado (rina)

luis, hola, podrias indicarme como seria el codigo completo del procedimiento no del programa entero sino del procedimiento te lo agradecere es que este tema de listas se me esta complicando.gracias


08-Apr-2014 22:35
Nacho Cabanes (+32)

El código de la implementación de una lista puede variar bastante. Lo ideal sería que pusieras tu programa para que sirva como base. Sin eso, depende bastante de la suerte el que la respuesta sea más útil o menos.


08-Apr-2014 23:23
Invitado (rina)

a que te refieres luis , con: El código de la implementación de una lista puede variar bastante
por eso es que pido ayuda luis por que no tengo nada es mi primer ejercicio de clase que nos ha dejado el profesor, por eso si pudieras ponerme tu solucion al procedimiento quiza con el pueda tener referencia para los demas que seguira planteandonos el profesor. agradezco cualquier buena intencion de tu parte y disculpa la molestia.


09-Apr-2014 02:42
Luis Torres (+12)

Si no sabes nada aún, deberías comenzar por aprender a generar una lista enlazada, insertando elementos uno a uno.

Saludos.


13-Apr-2014 18:37
Invitado (rina)

luis, gracias.una cosa es que he leido lo de tad pero aun no alcanzo a entender que diferencia hay entre este termino y el de listas enlazadas ?? y si podrias explicar cuando haces la asignacion ultimo(L1)^.siguiente :=L2; como se que es la direccion de la la lista L2 ?? gracias es que se me esta complicando este tema de listas. y en que casos se usa un apuntador auxiliar ?


13-Apr-2014 21:17
Nacho Cabanes (+32)

Si no sabes casi nada de listas, quizá debas empezar por leer esto:

http://www.aprendeaprogramar.com/mod/resource/view.php?id=156

Es del curso antiguo, la renovación todavía no ha llegado a ese apartado, pero quizá te ayude a coger ideas.

Un TAD es un "Tipo abstracto de datos", un concepto más amplio, que engloba no sólo las listas sino también otros tipos de datos en los que tan importan son los datos como las operaciones para manipularlos. También son TADs los árboles, los grafos y los conjuntos, por ejemplo.

Puedes leer más incluso en la Wikipedia (aunque este artículo concreto me parece muy "frío"):

http://es.wikipedia.org/wiki/Tipo_de_dato_abstracto






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)