Advertisement
Guest User

Untitled

a guest
Mar 20th, 2018
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.63 KB | None | 0 0
  1. int lista_retira_meio(lista &l, std::string &s)
  2. {
  3. if(l.tamanho == 0) return -1;
  4. nodo *aux=l.inicio, *ant = nullptr;
  5. int n = l.tamanho /2;
  6.  
  7. if(l.tamanho % 2 == 0) n--;
  8. for(int i=0; i<n; i++){
  9. ant = aux;
  10. aux = aux->elo;
  11. }
  12. if (l.inicio==l.fim) //UNICO NODO
  13. l.inicio=l.fim=nullptr;
  14.  
  15. else {
  16. if (aux==l.inicio) //PRIMEIRO NODO
  17. l.inicio=l.inicio->elo;
  18. else ant->elo = aux->elo;
  19.  
  20. if (aux==l.fim) //ULTIMO NODO
  21. l.fim=ant;
  22. }
  23. s = aux ->info;
  24. delete aux;
  25. l.tamanho--;
  26. return n;
  27. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement