Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Deque
- void Deque_anadirIzq(TLista *L, TElemento e){
- TNodo *nodo=malloc(sizeof(TNodo));
- nodo->elem=e;
- nodo->sig=NULL;
- if (Lista_EstaVacia(*L)){
- L->inicio=nodo;
- L->fin=nodo;
- }
- else{
- nodo->sig=L->inicio;
- L->inicio=nodo;
- }
- (L->numElem)++;
- }
- void Deque_anadirDer(TLista *L, TElemento e){
- TNodo *nodo=malloc(sizeof(TNodo));
- nodo->elem=e;
- nodo->sig=NULL;
- if (Lista_EstaVacia(*L)){
- L->inicio=nodo;
- L->fin=nodo;
- }
- else{
- L->fin->sig=nodo;
- L->fin=nodo;
- }
- (L->numElem)++;
- }
- void Deque_elimIzq(TLista *L){
- if (!Lista_EstaVacia(*L)){
- TNodo *crtNodo=L->inicio;
- if (Lista_Tamanho(*L)==1){
- free(crtNodo);
- L->inicio=NULL;
- L->fin=NULL;
- (L->numElem)--;
- }
- else{
- L->inicio=L->inicio->sig;
- free(crtNodo);
- (L->numElem)--;
- }
- }
- }
- void Deque_elimDer(TLista *L){
- if (!Lista_EstaVacia(*L)){
- TNodo *crtNodo=L->inicio;
- if (Lista_Tamanho(*L)==1){
- free(crtNodo);
- L->inicio=NULL;
- L->fin=NULL;
- (L->numElem)--;
- }
- else{
- while(crtNodo->sig->sig!=NULL)
- crtNodo=crtNodo->sig;
- L->fin=crtNodo;
- crtNodo=crtNodo->sig;
- free(crtNodo);
- L->fin->sig=NULL;
- (L->numElem)--;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment