1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Duvida em C: remover elementos de listas dinamicas

Discussão em 'Programação' iniciada por MrVerissimo, 3 de Janeiro de 2007. (Respostas: 1; Visualizações: 3507)

  1. MrVerissimo

    MrVerissimo Power Member

    Boas pessoal,

    Gostava de saber como se faz para remover apenas um elemento de uma lista dinamica, sem comprometer todos os outros.

    Exemplo: Considerem a LIFO X-Y-Z.
    Se remove-se X, ficaria Y-Z;
    Se remove-se Y, ficaria X-Z, etc...

    Já tive a tentar de varias maneiras e devo ter feito alguma coisa mal porque dá-me "segmentation fault". O algoritmo para resolver esta questao acho que percebo, agora passar para código é que é mais complicado.

    Thks desde já =)

    Cumps
     
    Última edição: 3 de Janeiro de 2007
  2. inginheiiro

    inginheiiro Power Member

    Lista=X-Y-Z

    a)Remover X
    Lista=Y
    Free (X)

    b) Remover Y
    X->Next=Y->Next;
    FREE(Y);

    c) Remover Z
    Y->Next=null;
    Free(Y->Next);
    Y->next=null;



    /ing
     

Partilhar esta Página