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

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  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,073 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,906 Último mensaje 22 Enero 2012, 04:50 am
por goll9d
ayuda con lista doblemente enlazada
Programación C/C++
gibi77 3 2,835 Último mensaje 7 Marzo 2012, 07:47 am
por nirvguy
Ayuda con lista doblemente enlazada
Programación C/C++
falconez 2 7,591 Último mensaje 16 Diciembre 2013, 01:35 am
por falconez
Agregar nodo a lista doblemente enlazada (lenguaje C)
Programación C/C++
NOB2014 7 4,997 Ú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,142 Último mensaje 6 Abril 2017, 05:54 am
por Abril7
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines