viciado Postado Setembro 21, 2009 Denunciar Share Postado Setembro 21, 2009 Dúvida sobre lista em C. Como posso inserir elementos e o elemento inserido ser sempre o último ?Exins(A) --- (A) ins(B) --- (A,B) ins(C) --- (A,B,C) . . . Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Durub Postado Setembro 21, 2009 Denunciar Share Postado Setembro 21, 2009 Aí depende do tipo da estrutura de dados.Se for uma linked list, é só inserir no tail. ("se for uma lista ligada, é só inserir na cauda")Exemplo:typedef struct _node { int val; _node *next; } node; typedef struct { node *head; /* primeiro elemento */ node *tail; /* último elemento */ } linkedlist; void inserir(linkedlist* list, int valor) { /* claro que aqui teria que fazer umas verificações para ver se a lista está vazia etc. apesar que pode-se usar uma função inicializadora e um dummy como primeiro elemento */ node* n = list->tail; n->next = malloc(....); n->next->val = valor; list->tail = n->next; }Abraços. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
viciado
Dúvida sobre lista em C. Como posso inserir elementos e o elemento inserido ser sempre o último ?
Ex
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.