You are on page 1of 6

Estructura de datos

Angelo José Zamorano Rivera

Análisis de algoritmos

Instituto IACC

29 de enero de 2018
Listas

Una lista es un conjunto de nodos enlazados, que forman una cadena. En el caso de las listas

es posible implementarlas utilizando otras estructuras de datos, en este caso se pude

implementar listas a través de arreglos.

El primero nodo de una lista comienza en 0 y no en 1.

Pilas

En la vida diaria cuando agregamos elementos sobre la superficie de un elemento anterior, este

proceso se llama apilar, un ejemplo claro es cuando apilamos cajas una sobre otra. Las pilas

pueden implementarse utilizando arreglos.

Las pilas trabajan con memorias del tipo LIFO que significa Last In, First Out, es decir, lo último

en entrar es lo primero en salir.

Las pilas contienen las siguientes operaciones:

 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.


Colas

Al igual que las colas que realizan las personas para esperar su turno de atención, las

estructuras de datos llamadas colas usan memoria del tipo FIFO que significa en ingles First In,

First Out es decir, lo primero en entrar es lo primero en salir. Las colas pueden implementarse

utilizando arreglos.

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

 Print: imprime los ítems existentes.

 Add: permite agregar elementos en la parte final de la cola.

 Remove: saca de la cola el primer elemento.

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

A continuación, se adjunta el código en lenguaje PHP para crear una pila, adicionar elementos

en este caso marcas de vehículos con la operación Push, luego utilizamos una función donde

se muestra la operación Count de forma eficiente, para obtener la cantidad de marcas

agregadas en la pila.

<?php
class Pila{

public function __construct(){


$this->Pila = array(); // tratar pila como arreglo.
}

public function push($elemento){


$this->Pila[] = $elemento; // agregar parametro a pila.
echo '- Marca ' . $elemento .' agregada a pila.<br/>';
}

public function contador(){


return count($this->Pila); // contar elementos en pila.

}
}

// instancia a clase Pila.


$objMarcas = new Pila();
// ingreso de marcas a pila.
$objMarcas->push('Chevrolet');
$objMarcas->push('Ford');
$objMarcas->push('Dodge');

// obtener cantidad de elementos ingresados.


echo '<p><b>Cantidad de elementos en pila: '. $objMarcas->contador() .'</b></p>';
?>
Bibliografía

IACC (2016). Estructuras de datos. Análisis de Algoritmos. Semana 1.