Sie sind auf Seite 1von 7

Estructuras de datos.

Franco Quintana Morgado

ANÁLISIS DE ALGORITMOS

Instituto IACC

Ponga la fecha aquí


Desarrollo

1. De acuerdo a lo visto en los contenidos de la semana y al hecho de que las estructuras de datos

pueden ser implementadas utilizando otras estructuras de datos, ¿cómo sería una estrategia para

contar los elementos existentes en una pila? (Es decir, ¿cómo sería una forma eficiente de

construir la función Count?).

Resp.

Definiciones:

Pilas: Es una estructura de datos donde la inserción así como la eliminación de elementos se

debe realizar desde un extremo, el tope. A esta estructura se le conoce también por el método

LIFO (Lars in, Firs out), es decir, último en llegar, primero en salir.

Poseen las siguientes operaciones básicas:

 Count: cantidad de ítems existentes en la pila.

 Print: imprime los ítems existentes.

 Push: permite agregar elementos en la parte superior del último ítem.

 Pop: saca de la pila el primer elemento.

 IsEmpty: valor booleano que indica si la pila está vacía con true o false.

 Peek: retorna el valor del primer elemento de la pila.

Primero creamos una pila con el siguiente código:

<?php
$pila_iacc = array();
echo "Compositores de música clásica <br>";
echo "------------------------------";
echo "<br>";
array_push($pila_iacc,"W. A. Mozart <br>", "Antonio Vivaldi <br>", "Leonard Bernstein
<br>","Nicolo Paganini <br>","George Frederic Handel <br>");
print_r($pila_iacc);
?>
Obteniéndose:

Al código anterior se le agrega:

echo "</br>";
echo "------------------------------</br>";
echo "Número de compositores de la pila: " . count($pila_iacc);
El resultado se observa en la captura de pantalla:
2. La empresa ferroviaria ABC-Ferrocarriles está en proceso de remodelación de algunos de sus

terminales de trenes y necesita mover un tren completo (locomotora y 4 vagones) desde el

terminal A al terminal C, como muestra la figura.

La dificultad en esta operación es que el tren debe quedar en el terminal C en el mismo orden del

que salió del terminal A, frente a esta situación se le ha pedido a Ud. que ayude con una

estrategia para cumplir con el objetivo. Entonces, ¿qué tipo de estructura de datos utilizaría para

resolver el problema? Genere la estrategia para mover el tren y escriba cómo lo haría (puede usar

el terminal B para apoyarse).

Resp.

Para resonder será necesario utilizar el principio de colas y pilas:

Consideremos el tren en primer lugar como una pila dónde se aplicará el método LIFO, es decir,

último en llegar primero en salir, debido la “locomotora” fue la última en llegar a la estación, ya

que el tren arribó retrocediendo, podemos utilizar la función pop para desapilar desde la

locomotora hasta el vagón indicado con el número 4, posteriormente se puede apilar desde la

locomotora utilizando la función push, quedando el tren de la siguiente manera:


La locomotora quedará en la dirección contraria, ahora sólo es necesario volver a repetir la

función pop y push para que el primer elemento en entrar a la estación C sea el vagón 4,

quedando en la misma dirección original.


Bibliografía

Material de estudio semana 1, IACC.

Estudios personales.

Das könnte Ihnen auch gefallen