ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

PILAS EN C++


Enviado por   •  4 de Octubre de 2014  •  Exámen  •  1.353 Palabras (6 Páginas)  •  179 Visitas

Página 1 de 6

PILAS EN C++

Una pila (stack en inglés) es una lista ordinal o estructura de datos en la que el modo de acceso a sus elementos es de tipo LIFO (del inglés Last In First Out, último en entrar, primero en salir) que permite almacenar y recuperar datos. Esta estructura se aplica en multitud de ocasiones en el área de informática debido a su simplicidad y ordenación implícita de la propia estructura.

Para el manejo de los datos se cuenta con dos operaciones básicas: apilar (push), que coloca un objeto en la pila, y su operación inversa, retirar (o desapilar, pop), que retira el último elemento apilado.

Por analogía con objetos cotidianos, una operación apilar equivaldría a colocar un plato sobre una pila de platos, y una operación retirar a retirarlo.

Implementacion en C++

/*

Name: Pilas

Copyright: casicodigo.blogspot.com

Author: Jose Martin Cruz Otiniano

Date: 27/10/12 12:27

Description: Apila elemento, Desempila elemento, Mostrar pila, Destruir Pila

*/

#include <iostream>

using namespace std;

struct nodo{

int nro;

struct nodo *sgte;

};

typedef nodo *ptrPila; // creando nodo tipo puntero( tipo de dato )

/* Apilar elemento

---------------------------------------------------------------------*/

void push( ptrPila &p, int valor )

{

ptrPila aux;

aux = new(struct nodo); // apuntamos al nuevo nodo creado

aux->nro = valor;

aux->sgte = p ;

p = aux ;

}

/* Desapilar elemento(devuelve elemento)

---------------------------------------------------------------------*/

int pop( ptrPila &p )

{

int num ;

ptrPila aux;

aux = p ;

num = aux->nro; // asignamos el primer vamor de la pila

p = aux->sgte ;

delete(aux);

return num;

}

/* Muestra elementos de la pila

---------------------------------------------------------------------*/

void mostrar_pila( ptrPila p )

{

ptrPila aux;

aux = p; // apunta al inicio de la lista

while( aux !=NULL )

{

cout<<"\t"<< aux->nro <<endl;

aux = aux->sgte;

}

}

/* Eliminar todos los elementos de la pila

---------------------------------------------------------------------*/

void destruir_pila( ptrPila &p)

{

ptrPila aux;

while( p != NULL)

...

Descargar como (para miembros actualizados)  txt (4.3 Kb)  
Leer 5 páginas más »
Disponible sólo en Clubensayos.com