Estructura de Datos-CLASE 1
Estructura de Datos-CLASE 1
Estructura de Datos-CLASE 1
DEFINICIN
En programacin, una estructura de datos es una forma de organizar un conjunto de datos elementales (un dato elemental es la mnima informacin que se tiene en el sistema) con el objetivo de facilitar la manipulacin de estos datos como un todo o individualmente.
Una estructura de datos define la organizacin e interrelacionamiento de estos, y un conjunto de operaciones que se pueden realizar sobre l. Las operaciones bsicas son: Alta, adicionar un nuevo valor a la estructura.
Cada estructura ofrece ventajas y desventajas en relacin a la simplicidad y eficiencia para la realizacin de cada operacin. De esta forma, la eleccin de la estructura de datos apropiada para cada problema depende de factores como la frecuencia y el orden en que se realiza cada operacin sobre los datos.
El tipo de un dato es el conjunto de valores que puede tomar durante el programa. Si se le intenta dar un valor fuera del conjunto se producir un error.
La asignacin de tipos a los datos tiene dos objetivos principales: Por un lado, detectar errores en las operaciones Por el otro, determinar cmo ejecutar estas operaciones Un lenguaje fuertemente tipeado es aquel en el que todos los
datos deben de tener un tipo declarado explcitamente, y adems que existen ciertas restricciones en las expresiones en cuanto a los tipos de datos que en ellas intervienen. Una ventaja de los lenguajes fuertemente tipeados es que se gasta mucho menos esfuerzo en depurar (corregir) los programas gracias a la gran cantidad de errores que detecta el compilador
Los tipos de datos simples son los siguientes: Numricos (Integer, Real) Lgicos (Boolean) Carcter (Char, String)
Dato. Representacin forma de hechos, conceptos o instrucciones Tipo de dato. Un conjunto de valores, aquellos que puede tomar cualquier dato de dicho tipo.
Las variables y constantes que forman parte de un programa pertenecen a un tipo de datos determinado. De esta forma, los valores asociados a dichas variables (o constantes) pueden operar con otros de acuerdo a su naturaleza (p. e. dos nmeros enteros pueden ser multiplicados pero no tiene sentido hacer esa operacin con cadenas de caracteres).
NUMEROS ENTEROS Si utilizamos 32 bits para representar nmero enteros, disponemos de 2^32 combinaciones diferentes de 0 y 1`s:
4294967296 valores.
Como tenemos que representar nmero negativos y el cero: -2 147 483 648 al +2 147 483 647
Intituto Tenolgico de Roque
12
NUMEROS REALES. (+|-) mantisa x 2exponente En la notacin del punto flotante un nmero real est representado por una hilera de 32 bits formada por una mantisa de 24 bits seguida de un exponente de 8 bits. La base se fija como 10. tanto la mantisa como el exponente son enteros binarios de complemento doble.
Intituto Tenolgico de Roque
Estructuras de datos
13
Son datos elementales aquellos que se consideran indivisibles en unidades ms simples. Una estructura de datos es una clase de datos que se puede caracterizar por su organizacin y operaciones definidas sobre ella. Algunas veces a estas estructuras se les llama tipos de datos.
14
Lgicas de datos.
En un programa, cada variable pertenece a alguna estructura de datos explcita o implcitamente definida, la cual determina el conjunto de operaciones validas para ella.
Primitivas y simples.
Aquellas que no estn compuestas por otras estructuras de datos por ejemplo, enteros, booleanos y caracteres.
15
Lineales
pilas,
No lineales incluyen
grafos
Organizacin de archivos
Las
tcnicas de estructuracin de datos aplicadas a conjuntos de datos que los sistemas operativos manejan como cajas negras comnmente se llaman Organizacin de Archivos.
Un tipo de datos abstracto TDA define una nueva clase de objeto o concepto que puede manejarse con independencia de la estructura de datos para representarlo. Para ello es necesario especificar: Las operaciones que se puede realizar con los objetos. El efecto que se produce al actuar con las operaciones sobre los mismos.
. Un TDA encapsula la definicin del tipo y todas las operaciones con este tipo. Los lenguajes de programacin entregan al programador ciertos tipos de datos bsicos o primitivos, especificando el conjunto de valores que una variable de uno de esos tipos puede tomar y el conjunto de operaciones realizables sobre los mismos. Por ejemplo, si se declara en C/C++
unsigned int x, y;
TDA
18
La instruccin n = 9+10 de un programa donde = es el operador de asignacin, el contenido de la localidad de almacenamiento dado por n ser el valor 19. Cada tipo de datos:
es reconocido por los elementos de datos que puede tomar. las operaciones asociadas a l. (su dominio)
Ejemplo : en pascal
Dominio entero D={0,1,2.max} Operaciones
Abstraccin matemtica
TDA
19
Los TDAs son generalizaciones de los tipos de datos bsicos y de las operaciones primitivas. Un TDA encapsula tipos de datos en el sentido que es posible poner la definicin del tipo y todas las operaciones con ese tipo en una seccin de un programa.
TDA
20
Por ejemplo, se puede definir un tipo de datos abstracto CONJUNTO [Aho1988] con el cual se pueden definir las siguientes operaciones: ANULA(A)
UNION(A, B, C)
TAMAO(A)
TDA
21
El componente bsico de una estructura de datos es la celda. La celda almacena un valor tomado de algn tipo de dato simple o compuesto El mecanismo de agregacin de celdas llamado arreglo es una coleccin de elementos de tipo homogneo.
TDA
22
0 1 2 3 4 0 1 CELDA 3 4 1 2 5 6 7 8
int w[5][3]
9 10
11 12 13 14
w[i][j] = b[i * n + j]
n es la cantidad de columnas del arreglo
w[2][0] = b[6]
Estructuras de datos
23
Son datos elementales aquellos que se consideran indivisibles en unidades ms simples. Una estructura de datos es una clase de datos que se puede caracterizar por su organizacin y operaciones definidas sobre ella. Algunas veces a estas estructuras se les llama tipos de datos.
24
Lgicas de datos.
En un programa, cada variable pertenece a alguna estructura de datos explcita o implcitamente definida, la cual determina el conjunto de operaciones validas para ella.
Primitivas y simples.
Aquellas que no estn compuestas por otras estructuras de datos por ejemplo, enteros, booleanos y caracteres.
25
Lineales
pilas,
No lineales incluyen
grafos
Organizacin de archivos
Las
tcnicas de estructuracin de datos aplicadas a conjuntos de datos que los sistemas operativos manejan como cajas negras comnmente se llaman Organizacin de Archivos.
Son aquel las en las que el tamao ocupado en memoria se define antes de que el programa se ejecute y no puede modificarse dicho tamao durante la ejecucin del programa.
No tienen las limitaciones o restricciones en el tamao de memoria ocupada que son propias de las estructuras estticas. Mediante el uso de un tipo de datos especifico, denominado puntero, es posible construir estructuras de datos dinmicas que no son soportadas por la mayora de los lenguajes, pero que en aquel los que si tienen estas caractersticas ofrecen soluciones eficaces y efectivas en la solucin de problemas complejos.
Arreglos unidimensionales: Ejemplo: Lista de Clase Cola para comprar tickest Vocales del abecedario.