Sunteți pe pagina 1din 3

Estructuras dinmicas Las estructuras dinmicas de datos son estructuras que cuya dimensin puede crecer o disminuir durante

la ejecucin del programa. Una estructura dinmica de datos es una coleccin de elementos llamados nodos. Al contrario que un array, que contiene espacio para almacenar un nmero fijo de elementos, una estructura dinmica de datos se ampla y contrae durante la ejecucin del programa. Las estructuras dinmicas de datos se pueden dividir en dos grandes grupos: Lineales: listas enlazadas, pilas, colas No lineales: rboles , grafos Las estructuras dinmicas de datos son de gran utilidad para almacenar datos del mundo real, que estn cambiando constantemente. Por ejemplo si tenemos almacenados en un array los datos de los alumnos de un curso, los cuales estan ordenados de acuerdo al promedio, para insertar un nuevo alumno seria necesario correr cada elemento un espacio: Si en su lugar se utilizara una estructura dinmica de datos, los nuevos datos del alumno se pueden insertar fcilmente.

Pila En este caso tambin se solicita un conjunto de datos de manera iterativa a ingresar por teclado. Cuando se finaliza el ingreso, se porcede a mostrar los elementos de la pila y adems se utiliza un archivo binario para transformar la pila en memoria en una estructura de datos persistente. Cada nodo de la pila, como en el caso anterior, mantendr una referencia al nodo siguiente haciendo posible el futuro recorrido de la misma. Luego de finalizada la muestra de los elementos de la pila, se consulta al usuario si se desea acceder a los datos de la misma almacenados en el archivo binario, para lo cual, en el caso de responder Si (S), se accede al archivo y se imprimen los registros de manera secuencial.

Colas Se entiende por cola una estructura de datos en la que se aaden nuevos tems en un extremo y se suprimen tems viejos en el opuesto. La cola es un tipo de dato que exhibe comportamiento FIFO. Cuando se retira el que ha arribado de primero, el siguiente arrib ms prximo se convierte en el elemento adicionado menos recientemente.

La operacin de agregar un elemento a la cola es comnmente llamado enqueue, la operacin de retirar el elemento menos recientemente ingresado, es usualmente llamada server ALGORITMO PARA INSERTAR Si A=mximo entonces mensaje (overflow) en caso contrario A<-- A+1 cola[A]<-- valor ALGORITMO PARA EXTRAER Si A&ltF entonces mensaje (underflow) en caso contrario F <-- F+1 x <-- cola[F]

Listas Enlazadas Una lista enlazada es una estructura que esta constituida por una serie de elementos llamados nodos y contienen dos campos, uno de informacin y el otro es de la direccin del elemento siguiente. El campo de informacin contiene el elemento actual en la lista. El campo de direccin siguiente contiene la direccin del nodo siguiente en la lista. Esta direccin la cual es utilizada para dar acceso a un nodo en particular denominado puntero Lista lineal enlazada Tiene que comenzar con un valor inicial que apunte al primer nodo de informacin y este a su vez tiene la direccin del siguiente nodo de informacin. Cuando la lista llega a su fin, en vez de tener la direccin del siguiente nodo se tiene un NULL, que en C++ lo podemos sustituir por un valor numrico negativo que ser el 999. En este tipo de estructura llamada Lista Enlazada se pueden realizar 4 distintas operaciones bsicas que son las siguientes:

Recorrido Bsqueda Insercin Eliminacin

S-ar putea să vă placă și