Tipos De Datos Abstractos
TIPOS DE DATOS ABSTRACTOS TDA (LISTA) Una lista se define como una serie de N elementos E1, E2, ..., EN, ordenados de manera consecutiva, es decir, el elemento Ek (que se denomina elemento k-ésimo) es previo al elemento Ek+1. Si la lista contiene 0 elementos se denomina como lista vacía. Las operaciones que se pueden realizar en la lista son: insertar un elemento en la posición k, borrar el k-ésimo elemento, buscar un elemento dentro de la lista y preguntar si la lista está vacía. Una manera simple de implementar una lista es utilizando un arreglo. Sin embargo, las operaciones de inserción y borrado de elementos en arreglos son ineficientes, puesto que para insertar un elemento en la parte media del arreglo es necesario mover todos los elementos que se encuentren delante de él, para hacer espacio, y al borrar un elemento es necesario mover todos los elementos para ocupar el espacio desocupado. Una implementación más eficiente del TDA se logra utilizando listas enlazadas. •estaVacia (): devuelve verdadero si la lista esta vacía, falso en caso contrario. •insertar(x, k): inserta el elemento x en la k-ésima posición de la lista. •buscar(x): devuelve la posición en la lista del elemento x. •buscarK(k): devuelve el k-ésimo elemento de la lista. •eliminar(x): elimina de la lista el elemento x.
TDA (PILA) Una pila (stack o pushdown en inglés) es una lista de elementos de la cual sólo se puede extraer el último elemento insertado. La posición en donde se encuentra dicho elemento se denomina tope de la pila. También se conoce a las pilas como listas LIFO (LAST IN - FIRST OUT: el último que entra es el primero que sale).
La interfaz de este TDA provee las siguientes operaciones: •apilar(x): inserta el elemento x en el tope de la pila (push en inglés). •desapilar (): retorna el elemento que se encuentre en el tope de la pila y lo elimina de ésta (pop en inglés). •tope (): retorna el elemento que se encuentre en el tope de la pila, pero sin eliminarlo de ésta (top en inglés). •estaVacia (): retorna verdadero si la pila no contiene elementos, falso en caso contrario (isEmpty en inglés). Nota: algunos autores definen desapilar como sacar el elemento del tope de la pila sin retornarlo. TDA (COLA) Una cola (queue en inglés) es una lista de elementos en donde siempre se insertan nuevos elementos al final de la lista y se extraen elementos desde el inicio de la lista. También se conoce a las colas como listas FIFO (FIRST IN - FIRST OUT: el primero que entra es el primero que sale). Las operaciones básicas en una cola son: •encolar(x): inserta el elemento x al final de la cola (enqueue en inglés). •sacar(): retorna el elemento que se ubica al inicio de la cola (dequeue en inglés). •estaVacia(): retorna verdadero si la cola esta vacía, falso en caso contrario. METODO En la programación orientada a objetos, un método es una subrutina cuyo código es definido en una clase y puede pertenecer tanto a una clase, como es el caso de los métodos de clase o estáticos, como a un objeto, como es el caso de los métodos de instancia. Análogamente a los procedimientos en los lenguajes imperativos, un método consiste generalmente de una serie de sentencias para llevar a cabo una acción, un juego de parámetros de entrada que regularán dicha acción o, posiblemente, un valor de salida (o valor de retorno) de algún tipo.