elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  lista doblemente enlazada
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: lista doblemente enlazada  (Leído 1,078 veces)
d91

Desconectado Desconectado

Mensajes: 165


Ver Perfil
lista doblemente enlazada
« en: 19 Octubre 2015, 01:29 am »

hola a todos, estoy tratando de hacer una insercion en una lista enlazada doble pero tengo error en la asignacion del puntero del nodo hacia el anterior, alguien me podria ayudar
Código
  1.  
  2. #include <iostream>
  3. #include <stdlib.h>
  4. #include <conio.h>
  5.  
  6. struct nodo{
  7.       int nro;
  8.       struct nodo *sgte;
  9.       struct nodo *anterior;
  10. };
  11.  
  12. typedef struct nodo *Tlista;
  13. /*
  14. ----------------------------------------------
  15. */
  16. void insertarFinal(Tlista &lista, int valor)
  17. {
  18.    Tlista t, q = new(struct nodo);
  19.  
  20.    q->nro  = valor;
  21.  
  22.    if(lista==NULL)
  23.    {
  24.        q->sgte = NULL;
  25.        q->anterior = lista;
  26.        lista = q;
  27.    }
  28.    else
  29.    {
  30.        t = lista;
  31.        while(t->sgte!=NULL)
  32.        {
  33.            t = t->sgte;
  34.        }
  35.        t->sgte = q;
  36.        q->anterior = t;
  37.    }
  38.  
  39. }
  40.  
  41.  


En línea

d91

Desconectado Desconectado

Mensajes: 165


Ver Perfil
Re: lista doblemente enlazada
« Respuesta #1 en: 19 Octubre 2015, 04:06 am »

ya encontre el error, y queda asi
Código
  1.  
  2. void insertarFinal(Tlista &lista, int valor)
  3. {
  4.    Tlista t, q = new(struct nodo);
  5.  
  6.    q->nro  = valor;
  7.    q->estado = 1;
  8.    q->sgte = NULL;
  9.  
  10.    if(lista==NULL)
  11.    {
  12.        q->anterior = lista;
  13.        lista = q;
  14.    }
  15.    else
  16.    {
  17.        t = lista;
  18.        while(t->sgte!=NULL)
  19.        {
  20.            t = t->sgte;
  21.        }
  22.        t->sgte = q;
  23.        q->anterior = t;
  24.    }
  25.  
  26. }
  27.  


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ayuda...Lista doblemente enlazada
Java
goll9d 2 2,914 Último mensaje 22 Enero 2012, 04:50 am
por goll9d
ayuda con lista doblemente enlazada
Programación C/C++
gibi77 3 2,843 Último mensaje 7 Marzo 2012, 07:47 am
por nirvguy
Ayuda con lista doblemente enlazada
Programación C/C++
falconez 2 7,603 Último mensaje 16 Diciembre 2013, 01:35 am
por falconez
Agregar nodo a lista doblemente enlazada (lenguaje C)
Programación C/C++
NOB2014 7 5,010 Último mensaje 3 Agosto 2016, 16:14 pm
por AlbertoBSD
Lista doblemente enlazada ordenada por método de selección
Programación C/C++
Abril7 0 3,156 Último mensaje 6 Abril 2017, 05:54 am
por Abril7
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines