Sei sulla pagina 1di 5

INSTITUTO TECNOLGICO DE POCHUTLA

MATERIA: ESTR. DATOS

PROFESOR: I.S.C EBERT MATUS HERNANDEZ

ALUMNO: MARIO ALAN OJEDA RAMOS

SEMESTRE: III

GRUPO:B

CARRERA: ING. EN SISTEMAS COMPUTACIONALES

UNIDAD: III

TRABAJO DE INVESTIGACIN: 3.1 AL 3.6

LISTAS Es una de las estructuras de datos fundamentales, y puede ser usada para implementar otras estructuras de datos. Consiste en una secuencia de nodos, en los que se guardan campos de datos arbitrarios y una o dos referencias (punteros) al nodo anterior o posterior. OPERACIONES
En toda estructura de datos hay dos operaciones que sobresalen por encima del resto: Insertar y borrar. Estas dos operaciones aparecern en toda estructura de datos, puede que con otro nombre, o con una funcionalidad ligeramente diferente, pero su filosofa ser la misma, proporcionar unas operaciones para la construccin de la estructura de datos. Insertar La operacin insertar consiste en la introduccin de un nuevo elemento en la lista. En una lista no ordenada no es necesario mantener ningn orden, por lo tanto la insercin de elementos se puede realizar en cualquier lugar de la lista, al principio, al final, en una posicin aleatoria, ... Generalmente se realiza la insercin de tal forma que la complejidad temporal sea mnima, es decir, que sea una operacin sencilla para que se realice en el menor tiempo posible. La operacin ms sencilla depende de la implementacin de la estructura de datos, en unos casos puede ser la insercin al inicio, en otros la insercin al final y en este caso la insercin la realiza en el segundo nodo de la lista. Si tenemos la lista...

... e insertamos el elemento 0, la lista quedara de la siguiente forma:

Borrar La operacin borrar consiste en la eliminacin de la lista de un elemento concreto. El elemento a borrar ser escogido por el programador. La eliminacin en una lista no conlleva ningn trabajo adicional ms que el propio de la eliminacin del elemento en s. Para borrar un elemento cualquiera habra que realizar un recorrido secuencial de la lista hasta encontrar el nodo buscado y una vez localizado reestructurar los punteros para saltarse el nodo a borrar y as poder eliminarlo. Vamos a verlo con un ejemplo. Borrado del elemento 76 en la lista anterior:

Paso 1: Localizar el elemento a borrar.

Paso 2: Reestructurar punteros y eliminar nodo.

Otras operaciones A partir de estas dos operaciones bsicas cada lista puede presentar muchas operaciones diferentes, vamos a comentar algunas de ellas, dejando claro que las dos bsicas que siempre aparecern son las anteriores.

Tamao: Esta operacin suele informar sobre el nmero de elementos que tiene en ese instante la lista. Buscar: Comprueba si existe un determinado elemento en la lista.

Recorrer lista: Recorre toda la lista, realizando una operacin en cada nodo. Por ejemplo, mostrar el contenido por pantalla.

TIPO DE LISTAS 1. LISTAS ENLAZADAS SIMPLES 2. LISTAS ENLAZADAS DOBLES 3. LISTAS ENLAZADAS CIRCULARES 4. LISTAS ENLAZADAS MULTILISTAS

LISTAS ENLAZADAS Recorrido simplemente despliega los datos almacenados en el arreglo Info, con ayuda de un segundo arreglo llamado Indice el cual guarda el orden en el que encuentran enlazados cada uno de los datos. Explicacion: Apuntador toma el valor de Inicio, despues ve si la condicin cumple para efectuar un Ciclo mientras Apuntador sea diferente de 0, si cumple lo que hace es que despliega la Info[Apuntador], despues Apuntador toma el valor de Indice[Apuntador] (El cual nos indica el siguiente nodo que sigue en la lista) y hace esto hasta que Apuntador sea igual a 0 (Cuando llega a este punto a llegado al fin de la Lista Enlazada).

LISTAS DOBLE ENLAZADAS Una lista doble , doblemente ligada es una coleccin de nodos en la cual cada nodo tiene dos punteros, uno de ellos apuntando a su predecesor (li) y otro a su sucesor(ld). Por medio de estos punteros se podr avanzar o retroceder a travs de la lista, segn se tomen las direcciones de uno u otro puntero.

La estructura de un nodo en una lista doble es la siguiente Existen dos tipos de listas doblemente ligadas: Listas dobles lineales. En este tipo de lista doble, tanto el puntero izquierdo del primer nodo como el derecho del ltimo nodo apuntan a NIL. Listas dobles circulares. En este tipo de lista doble, el puntero izquierdo del primer nodo apunta al ltimo nodo de la lista, y el puntero derecho del ltimo nodo apunta al primer nodo de la lista.

LISTAS CIRCULARES
En una lista enlazada circular, el primer y el ltimo nodo estn unidos juntos. Esto se puede hacer tanto para listas enlazadas simples como para las doblemente enlazadas. Para recorrer un lista enlazada circular podemos empezar por cualquier nodo y seguir la lista en cualquier direccin hasta que se regrese hasta el nodo original. Desde otro punto de vista, las listas enlazadas circulares pueden ser vistas como listas sin comienzo ni fin. Este tipo de listas es el ms usado para dirigir buffers para ingerir datos, y para visitar todos los nodos de una lista a partir de uno dado.

Una lista enlazada circular que contiene tres valores enteros

APLICACIONES DE LAS LISTAS Las listas enlazadas son usadas como mdulos para otras muchas estructuras de datos, tales como pilas, colas y sus variaciones. El campo de datos de un nodo puede ser otra lista enlazada. Mediante este mecanismo, podemos construir muchas estructuras de datos enlazadas con listas; esta prctica tiene su origen en el lenguaje de programacin Lisp, donde las listas enlazadas son una estructura de datos primaria (aunque no la nica), y ahora es una caracterstica comn en el estilo de programacin funcional.

A veces, las listas enlazadas son usadas para implementar vectores asociativos, y estas en el contexto de las llamadas listas asociativas. Hay pocas ventajas en este uso de las listas enlazadas; hay mejores formas de implementar stas estructuras, por ejemplo con rboles binarios de bsqueda equilibrados. Sin embargo, a veces una lista enlazada es dinmicamente creada fuera de un subconjunto propio de nodos semejante a un rbol, y son usadas ms eficientemente para recorrer sta serie de datos. BIBLIOGRAFIA: http://wwwtemarioestructuradedatos.blogspot.mx/2011/01/unidad-2-estructuras-lineales.html http://231mequipo2.blogspot.mx/2010/01/unidad-iii-listas-enlazadas.html

Potrebbero piacerti anche