jueves, 13 de noviembre de 2014

Estructuras dinámicas de memoria mediante: pilas, colas y listas.

 PILAS:
Son un tipo especial de lista, conocidas como listas LIFO (Last In, First Out): el último en entrar es el
primero en salir). Los elementos se "amontonan" o apilan, de modo que sólo el elemento que está
encima de la pila puede ser leído, y sólo pueden añadirse elementos encima de la pila.
En la vida cotidiana existen muchos ejemplos de pilas, una pila de platos en una alacena, una pila de latas en un supermercado, una pila de papeles sobre un escritorio, etc.

COLAS:
Otro tipo de listas, conocidas como listas FIFO (First In, First Out: El primero en entrar es el primero en
salir). Los elementos se almacenan en fila, pero sólo pueden añadirse por un extremo y leerse por el otro.
Las colas se utilizan en sistemas informáticos, transportes y operaciones de investigación(entre otros), dónde los objetos, personas o eventos son tomados como datos que se almacenan y se guardan mediante colas para su posterior procesamiento. Este tipo de estructura de datos abstracta se implementa en lenguajes orientados a objetos mediante clases, en forma de listas enlazadas.

LISTAS:
Es un TAD  que nos permite almacernar datos de una manera organizada, al igual que los vectores pero, a diferencia de estos, esta estructura es dinamica, por lo que no tenemos que saber "a priori" los elementos que puede contener.
Los elementos de una lista suelen contener tambien el nombre de Nodos de una lista.

En la vida diaria podemos usar listas desde los que vallamos a comprar o hasta una lista de deudas.

Operaciones en arreglos: búsqueda y edición. Ejemplos en C de cada operación.

Busqueda
La búsqueda consiste en encontrar un determinado valor dentro de un conjunto de datos, para recuperar alguna información asociada con el valor buscado.
Existen diferentes formas de realizar esta operación; en otras palabras hay distintos métodos o técnicas para realizar búsqueda en vectores.
  • Búsqueda secuencial o lineal
  • Búsqueda Binaria
  • Búsqueda Hash
  • Arboles de búsqueda
Ejemplo

Edicion
La edición de un arreglo consiste en modificar la locación de sus datos de tal manera que cambien de ubicación contenido etc.
Ejemplo El Sort de burbuja.



Arreglo: definición, Tipos: unidimensional, bidimensional, multidimensional. (Representación)



Representacion


Estructura de datos: definición, declaración y ejemplo en C


Ejemplo:


Apuntador: definición, declaración y ejemplo en C.

Ejemplo




Recursividad: definición y ejemplo en C.


La recursividad es una técnica de programación que se utiliza para realizar una llamada a una
función desde ella misma, de allí su nombre. El ejemplo más utilizado por su fácil comprensión es
el cálculo de números factoriales. El factorial de 0 es, por definición, 1. Los factoriales de números
mayores se calculan mediante la multiplicación de 1 * 2 * ..., incrementando el número de 1 en 1
hasta llegar al número para el que se está calculando el factorial.