Vous êtes sur la page 1sur 9

“ESTRUCTURA Y ORGANIZACIÓN DE DATOS”

ACTIVIDAD 1
U N I D A D 2

“Aplicaciones de la estructura de datos pilas en el


área de computación”

MAESTRA:

● Lic. María de los Ángeles Rocha Sánchez

CARRERA:

● Ingeniería en Tecnologías de la Información y la


Comunicación.

INTEGRANTES:

● Dávila López Beatriz


● González Sosa Julio César
● Ramírez Rodríguez Raúl Eduardo
● Rodríguez Perales Marco Antonio
● Soberano Hernández Jorge Alejandro
FECHA DE ENTREGA:

● 28 de Septiembre del 2018

Índice

Introducción………………………………………………………3
Desarrollo……………………………………………………….....4
Código JAVA………………………………………………….....6
Opiniones…………………………………………………………7
Bibliografía………………………………………………………..9
Introducción

La presente investigación sobre los datos pilas forma parte de nuestros


estudios de la asignatura de Estructura y organización de datos, y en este
trabajo nos enfocamos en la aplicación de estos datos en el área de
computación. La estructura pila se aplica en multitud de ocasiones en el
área de informática debido a su simplicidad y ordenación implícita ésta.

Antes de continuar, hablaremos un poco acerca de las pilas. Una pila es


una lista ordenada o estructura de datos que permite almacenar y
recuperar datos, los cuales sólo se pueden acceder por un solo extremo,
denominado “tope” o “cima”. El modo de acceso a sus elementos es de
tipo LIFO (Last In, First Out, «último en entrar, primero en salir»). Esta
estructura se aplica en multitud de supuestos en el área
de informática debido a su simplicidad y capacidad de dar respuesta a
numerosos procesos.
Para el manejo de los datos cuenta con dos operaciones básicas: apilar,
que coloca un objeto en la pila, y su operación inversa, retirar, que retira el
último elemento apilado.
Las pilas suelen emplearse en los siguientes contextos:
● Evaluación de expresiones en notación postfija.

● Reconocedores sintácticos de lenguajes independientes del contexto.

● Implementación de recursividad.

La pila es una de las estructuras más importantes en computación, en el


desarrollo de sistemas informáticos y software en general. Se usa para
calcular expresiones, para pasar de un lenguaje de ordenador a otro y
para transferir el control de una parte de un programa a otra.

Por ejemplo, el sistema de soporte en tiempo de compilación y ejecución


del Pascal utiliza una pila para llevar la cuenta de los parámetros de
procedimientos y funciones, variables locales, globales y dinámicas. Este
tipo de estructuras también son utilizadas para traducir expresiones
aritméticas o cuando se quiere recordar una secuencia de acciones u
objetos en el orden inverso del ocurrido.
Las pilas son una estructura de datos muy usadas en la solución de diversos
tipos de problemas, en el área de computación. Algunos de los casos más
representativos de aplicación de las mismas son:

● Llamadas a subprogramas

● Recursividad

● Tratamiento de expresiones aritméticas

● Ordenación

Llamadas a subprogramas:

● Cuando se tiene un programa que llama a un subprograma,


también conocido como módulo o función, internamente se usan
pilas para guardar el estado de las variables del programa, así como
instrucciones pendientes de ejecución en el momento que se hace
la llamada.

● Cuando termina la ejecución del subprograma, los valores


almacenados en la pila se recuperan para continuar con la
ejecución del programa en el punto en el cual fue interrumpido.

● Además de las variables se recupera la dirección del programa en la


que se hizo la llamada, porque a esa posición se regresa el control
del proceso.

RECURSIVIDAD:

La recursividad es una técnica en la que un procedimiento o función se


hace llamadas a sí mismo en el proceso de realización de sus tareas. La
recursividad se puede definir mediante un clásico ejemplo de la función
factorial. La recursividad es una técnica de programación muy potente
que puede ser usada en lugar de una iteración (Bucles o ciclos). Ello
implica una forma diferente de ver las acciones repetitivas permitiendo
que un subprograma se llame a sí mismo para resolver una operación más
pequeña del programa original.

4!= 4*3*2*1=24
TRATAMIENTO DE EXPRESIONES ARITMÉTICAS:

Transformación de expresiones aritméticas en cualquier tipo de


problema/necesidad, forma de acomodo e inicio priorizando
valores/variables.

Ejemplo:

6+3*2=632*+

Se realiza en una sola pasada, usando una pila donde se van apilando los
operadores. Antes de apilar un operador se desapilan los que tengan una
prioridad mayor o igual a la del nuevo operador.

¿Cómo realizamos la evaluación?

1. LEER ELEMENTO◦

2. SI ES OPERANDO METERLO EN UNA PILA DE NUM. REALES◦

3. SI ES OPERADOR ENTONCES:

3.1 SACAR LOS 2 ELEMENTOS SUPERIORES DE LA PILA

3.2 EVALUAR LA OPERACIÓN

3.3 METER EL RESULTADO EN LA PILA

Resultado = Cima(pila)

ORDENACIÓN:

Es muy usual de usar un método o seguir un parámetro secuencial para


llegar a clarificar algún tipo de actividad o tema en concreto. En la
computación podemos hacer uso de algún algoritmo para dar un
entendimiento lógico a nuestra tarea por asignar, se debe optar por aquel
algoritmo en el cual su análisis se óptimamente factible y rendir
eficientemente en resultados desfavorables para dar una orientación
adecuada a nuestra estructura de datos.
Código JAVA

Comandos básicos (apilar, desapilar, leer último, vacía)

//Pilas: Comandos básicos (push, pop, peek, empty).


package pilas;
import java.util.Stack;
public class Pilas {

public static void main(String[] args) {

Stack < String > pila = new Stack < String > ();

//apila 3 elementos
pila.push("elemento1");
pila.push("elemento2");
pila.push("elemento3");
System.out.println("1- push: " + pila);

//retira elemento que está en la cima de la pila


pila.pop();
System.out.println("2- pop: " + pila);

//devuelve el elemento que está en la cima de la pila


String x = pila.peek();
System.out.println("3- peek: " + x);

//devuelve cierto si la pila esta vacía


boolean y = pila.empty();
System.out.println("4- empty: " + y);

}
}

Resultado:

Run:
1- push: [elemento1, elemento2, elemento3]
2- pop: [elemento1, elemento2]
3- peek: elemento2
4- empty: false
Opiniones

BEATRIZ DÁVILA LÓPEZ:


Opino que las pilas dentro del área de programación son de suma
importancia, se utilizan de manera diaria por programadores e informáticos
y realizamos un gran número de operaciones con ellas.

Las pilas han sido utilizadas en múltiples ocasiones desde hace décadas y
seguirán siendo usadas por su simplicidad y eficacia. Sin esta herramienta a
la hora de resolver problemas de modelado de datos, sería más difícil.

JORGE ALEJANDRO SOBERANO HERNANDEZ

Las pilas son de gran importancia para el área de programación mas que
nada en el.momento de estar desarrollando un tipo de programa el cual
implique insertar e eliminar datos.

También se es necesario en evaluaciones de expresiones como lo son en


la notación postfija o notación polaca inversa las cuales contienen
operadores y operandos los cuales son números , signos como: suma ,resta
, división multiplicación etc Con esto podemos reliazar una operación y
obeter el resultado. Una de sus ventajas puedes ser que los cálculos se
pueden realizar secuencialmente según se van introduciendo operadores,
en vez de tener que esperar a escribir la expresión al completo. Debido a
esto, se cometen menos errores al procesar cálculos complejos.

Creó que posiblemente las pila se pueden utilizar en un navegador para


guardar datos tales como un historial de búsqueda, el único detalle es k
ahí tienes más libertad para eliminar un dato, pero puedes eliminar de la
cima hacia abajo.

MARCO ANTONIO RODRIGUEZ PERALES

Las pilas son muy importantes para la programación ya que ahí se puede ir
programando y utilizarlas para base de datos, también en la web por que
ahi se puede ir guardando el historial y cuando queramos volverá ver esa
página entramos ahi y lo encontramos o también borrar para liberar
espacio, en la computadora es igual se puede van almacenando cosas
automáticamente como por ejemplo cuando le entra un virus o hiciste
algo mal, puede ir a configuración y escoger una opción que te da de
regresar a pc a la última actualización, es muy importante ya que sin eso
sería muy difícil lograr lo que se a logrado por que muchas veces nos
queda dudad o se nos olvida algo y recurrimos al historial o buscar al
pasado.

JULIO CESAR GONZALEZ SOSA

A decir verdad pienso que las pilas, hacen un trabajo que hasta ahora no
sabia, al programar siempre pensé que cuando se escribía una línea de
código con un operación aritmética la maquina entendía de la manera en
que se escribe normalmente a+b por ejemplo , pero si la maquina utiliza
pilas para traducir eso a ab+, se me hace muy ingenioso dejar que se
programe de una manera más fácil y entendible gracias a las pilas y su
ayuda silenciosa al programar, aunque no tan silenciosa si lo que tratamos
de hacer es crear una por nuestra cuenta, es muy útil para guardar datos y
tener un cierto tipo de historial, debido a que están ordenadas por la
ultima a la más antigua.

RAUL EDUARDO RAMIREZ RODRIGUEZ


El uso de las pilas como base en la estructura de datos nos ayuda a asignar
un espacio en memoria por cada proceso que utilicemos, es un recurso
muy funcional dando dirección a la información y así continuar con el
siguiente proceso/función consecuente asi se genera un proceso en
cascada donde se van rescatando las funciones almacenadas
permitiendo concluir su proceso.

Utilizar la pila como recurso, puede ser ocasionalmente vulnerable o poco


factible para el desarrollo de nuevas tareas aplicando su uso, supongamos
que al introducirle mas datos que los que soporta podríamos generar un
error de dirección o de retorno que podría ser vulnerable a errores o dar
una visualización a todo un proceso base que además de generar
vulnerabilidad al código, orientamos y desarrollamos sin optimizar y
estructurar adecuadamente los datos.

`
Bibliografía
https://es.wikipedia.org/wiki/Pila_(inform%C3%A1tica)
http://informaticavelozcs.blogspot.com/2014/03/pilas-colas.html
https://es.scribd.com/document/216947850/Pila-Informatica
http://unidad3estructuradedatos.blogspot.com/2014/09/325-recursividad-
con-ayuda-de-pilas.html
https://www.uaeh.edu.mx/docencia/P_Presentaciones/icbi/asignatura/Ca
p3PilasColas.pdf
http://docplayer.es/71156802-Pilas-uso-i-2-transformacion-de-expresiones-
aritmeticas-de-notacion-infija-a-postfija-ejemplo.html

Vous aimerez peut-être aussi