karlangadas

Cola funciones

Feb 23rd, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.99 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include "Cola.h"
  4.  
  5.  
  6. void Cola_init(TCola *C){
  7.     C->inicio = NULL;
  8.     C->fin = NULL;
  9. }
  10.  
  11. void Cola_enqueue(TCola *C, TElemento nuevoElem){
  12.     TNodo *ptr_nuevoNodo;
  13.    
  14.     ptr_nuevoNodo = (TNodo*)malloc(sizeof(TNodo));
  15.    
  16.     if (ptr_nuevoNodo != NULL){
  17.         ptr_nuevoNodo->info = nuevoElem;
  18.         ptr_nuevoNodo->sig = NULL;
  19.         if (C->inicio == NULL)
  20.             C->inicio = ptr_nuevoNodo;
  21.         else
  22.             C->fin->sig = ptr_nuevoNodo;
  23.  
  24.         C->fin = ptr_nuevoNodo;
  25.     }
  26. }
  27.  
  28. TElemento Cola_dequeue(TCola *C){
  29.     if (!Cola_isEmpty(C)){
  30.         TElemento head_info; TNodo *ptr_head;
  31.         ptr_head = C->inicio;
  32.         head_info = ptr_head->info;
  33.         C->inicio = C->inicio->sig;
  34.         free(ptr_head);
  35.         return head_info;
  36.     }
  37.     return -1;
  38. }
  39.  
  40. int Cola_isEmpty(TCola *C){
  41.     return (C->inicio == NULL);
  42. }
  43.  
  44. void Cola_finalize(TCola *C){
  45.     while (!Cola_isEmpty(C))
  46.         Cola_dequeue(C);
  47. }
Add Comment
Please, Sign In to add comment