Documente Academic
Documente Profesional
Documente Cultură
Pila
Es una colección de datos que se caracteriza por manejar los datos de forma LIFO
Tope /
Inicio
Aplicaciones en la programación
deshacer en Word
retroceder en los navegadores
Estado
Pila vacía
Pila llena -> solo en el caso de un arreglo para pila
Cuantos elementos hay en la pila
#include <stdlib.h>
#include <stdio.h>
int valor;
} tipoNodo;
int main()
Push(&pila,20);
Push(&pila,10);
Push(&pila,40);
Push(&pila,30);
Push(&pila,90);
printf("%d\n",Pop(&pila));
printf("%d\n",Pop(&pila));
printf("%d\n",Pop(&pila));
printf("%d\n",Pop(&pila));
printf("%d\n",Pop(&pila));
system("PAUSE");
return 0;
pNodo nuevo;
nuevo = (pNodo)malloc(sizeof(tipoNodo));
nuevo->valor = v;
if(*pila == NULL)
nuevo->siguiente = NULL;
else
nuevo->siguiente = *pila;
*pila = nuevo;
}
int Pop(Pila *pila)
nodo = *pila;
else{
*pila = nodo->siguiente;
v = nodo->valor;
/* Borrar el nodo */
free(nodo);
return v;
}
Cola
Es una colección de datos que se caracteriza por manejar los datos de forma FIFO
ENTRADA SALIDA
Aplicaciones en la programación
Estado
Cola vacía
Cola llena -> solo en el caso de un arreglo para cola
Cuantos elementos hay en la cola
#include <stdlib.h>
#include <stdio.h>
int valor;
} tipoNodo;
int main()
insertar(&cola, 20);
insertar(&cola, 10);
insertar(&cola, 40);
insertar(&cola, 30);
insertar(&cola, 90);
return 0;
pNodo nuevo;
pNodo aux;
nuevo = (pNodo)malloc(sizeof(tipoNodo));
nuevo->valor = v;
if(*cola == NULL){
*cola=nuevo;
nuevo->siguiente = NULL;
else{
aux = *cola;
while(aux->siguiente!=NULL)
aux->siguiente=nuevo;
aux=nuevo;
aux->siguiente=NULL;
}
int sacar(Cola *cola)
nodo = *cola;
if(nodo == NULL)
else{
v = nodo->valor;
free(nodo);
return v;