Advertisement
Gabriel_Rofl

Untitled

Oct 9th, 2017
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.89 KB | None | 0 0
  1. t_pilha* InicializaPilha(){
  2.     t_pilha pilha = (t_pilha)malloc(sizeof(t_pilha));
  3.     pilha->topo = NULL;
  4. }
  5.  
  6. t_elemento* AlocaElemento(int item){
  7.     t_elemento novo = (t_elemento)malloc(sizeof(t_elemento));
  8.     novo->item = item;
  9.     novo->proximo = NULL;
  10. }
  11.  
  12. int EstaVazia(t_pilha *pilha){
  13.     return (pilha->topo == NULL);
  14. }
  15.  
  16. void Push(int item, t_pilha *pilha){
  17.     t_elemento *novo = AlocaElemento(item);
  18.     if(EstaVazia(pilha)){
  19.         pilha->topo = novo;
  20.     }
  21.     else{
  22.         novo->proximo = pilha->topo;
  23.         pilha->topo = novo;
  24.     }
  25. }
  26.  
  27. void Pop(t_pilha *pilha){
  28.     if(EstaVazia(pilha)){
  29.         printf("PILHA ESTA VAZIA\n");
  30.         exit(-1);
  31.     }
  32.     else{
  33.         t_elemento *aux = pilha->topo;
  34.         pilha->topo = pilha->topo->proximo;
  35.         free(aux);
  36.     }
  37. }
  38.  
  39. int Topo(t_pilha* pilha){
  40.     if(EstaVazia(pilha)){
  41.         printf("Pilha estΓ‘ vazia!\n");
  42.         free(pilha);
  43.         exit(-1);
  44.     }
  45.     return pilha->topo->item;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement