SlideShare una empresa de Scribd logo
1 de 12
INSTITUTO TECNOLÓGICO SUPERIO DE FELIPE CARRILLO PUERTO 
ING: Sistemas Computacionales 
Estructura de Datos 
Ezer Abisai Ayala Mutul 
Niels Henryk Aranda Cuevas 
3er Semestre Grupo “A” 
Felipe carrillo puerto Quintana Roo a 28 de septiembre del 2014
TIPOS DE DATOS ABSTRACTOS (TDA) 
Es el elemento básico de la abstracción de datos. 
Un TDA es un tipo de dato definido por el programador que se puede manipular de un 
modo similar a los tipos de datos definidos por el lenguaje. 
Si los tipos de datos existentes en el lenguaje no son suficientes o no son eficientes para 
ciertas aplicaciones, la mayoría de los lenguajes de programación permiten a usuario 
definir sus propios tipos de datos. 
Esta definición consiste en establecer los elementos de que consta el tipo, así como las 
operaciones que se pueden realizar con instancias de este tipo.
APLICACIONES 
Las dos aplicaciones tradicionales de los TDA es la definición de una lista o de una pila, 
ambos conceptos son muy útiles en el área de las estructuras de datos: 
1. Una pila es una colección dinámica de datos de un mismo tipo, en las que los 
elementos se insertan y se extraen sobre un mismo extremo. 
2. Una lista es también una colección dinámica de datos de un mismo tipo, se 
considera aquí que cada elemento de la lista tiene un único predecesor (excepto el 
primer elemento) y un único sucesor (excepto el ultimo elemento).
DECLARACIÓN 
Para construir un tipo abstracto se debe: 
1. Establecer la definición del tipo 
2. Definir las operaciones (funciones y procedimientos) que pueden operar con dicho tipo 
3. Ocultar la presentación de los elementos del tipo de modo que solo se pueda trabajar con 
ellos usando los procedimientos definidos en 2 
4. Poder crear instancias múltiples del tipo
La declaración de RDA´S requiere al menos el uso de dos palabras reservadas en C++. 
 Struct. Struct define una estructura de datos; este permite crear un tipo de dato que esta 
compuesto de unos o varios elementos denominados campos (variables definidos por el 
lenguaje).
 Typedef. Se utiliza para definir el “alias” o sinónimo de un tipo de datos. 
Se esta definiendo un nuevo tipo de datos llamado persona, que contiene 
exactamente la misma estructura y elementos Tipo_Persona definida arriba por eso 
se dice que son sinónimos. En otras palabras existiría un nuevo tipo en el lenguaje. 
La sintaxis de las dos palabras claves incluidas aquí es la siguiente:
OPERACIONES SOBRE UN TDA 
Las operaciones que se aplican a un TDA (numeral 2) generalmente caen dentro de los siguientes 
tipos básicos: 
1. Construcción: crean una nueva instancia del tipo 
2. Transformación: cambia el valor de uno o mas elementos del tipo 
3. Observación: permiten determinar el valor de uno o mas elementos de un tipo sin modificarse 
4. Iteradores: permiten procesar todos los datos de un TDA en forma secuencial
MEMORIA ESTÁTICA 
Es la memoria que se reserva en el momento de la compilación antes de empezar a ejecutar el programa. 
Los objetos son creados al iniciar el programa y destruidos al finalizar el mismo. Mantienen las misma 
localización en memoria durante todo el transcurso del programa hasta que son destruidos. 
Los objetos administradores de este modo son: variables globales, variables estáticas de funciones, 
miembros estatic de clases y literales de cualquier tipo.
CONSIDERACIONES 
1. Error de un tiempo de ejecución de índice fuera de rango 
2. Se debe de conocer la anticipación el tamaño de la estructura V[3], M[2,2], C[5,3,2] 
3. Se guarda en memoria adyacente ejem 
4. Vectores, matrices, cubos, registros, archivos 
Ventajas 
1. Lógica simple 
2. Optimo para resolver problemas P y M 
Desventajas 
1. No se puede modificar el tamaño de las estructuras en T.D.E 
2. No se optimiza con grandes cantidades de datos 
3. Desperdicio de memoria cuando no se utiliza la totalidad del tamaño por ejem 
V[100]
MEMORIA DINÁMICA 
La memoria dinámica se refiere a aquella memoria que no ´puede ser definida ya que no se 
conoce o no se tiene idea del numero dela variable a considerarse, la solución a este problema 
es la memoria dinámica que permite solicitar memoria en tiempo de ejecución, por lo que 
cuanta mas memoria se necesite , mas se necesita el sistema operativo. 
El sistema operativo maneja la memoria gracias al uso de punteros, por la misma naturaleza 
del proceso nos impide conocer el tamaño de la memoria necesaria en el momento de 
compilar.
Consideraciones 
1. Manejo transparente del tamaño de la estructura 
2. Se guarda donde se encuentra el espacio 
3. No se guarda necesariamente en memoria adyacente 
Ventajas 
1. El tamaño de la estructura no se infiera en la lógica del programa 
Desventajas 
Las estructuras de datos son una forma avanzada de manejar datos en tiempo de 
ejecución
CONCLUSIÓN GENERAL 
Es esta unidad llamada introducción a las estructuras de datos vimos los 
tipos de datos, nos pudimos dar cuenta que para construir un tipo de dato 
abstracto se necesita un serie de pasos que en desarrollo de esta 
presentación se menciono. un ejemplo mostrado es la de un a pila que es 
una colección dinámica de datos de un mismo tipo, en la que los 
elementos se insertan por un mismo tipo. Todo esto lo podemos aplicar para 
crear programas que nos puedan ayudar con el control de los resultados 
de los exámenes de alumnos, para calcular la edad de algunas personas y 
saber si tienen la misma edad o son diferentes

Más contenido relacionado

La actualidad más candente

PROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOPROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOAnabel Jaramillo
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visualLibertad25
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaAngel Vázquez Patiño
 
Fundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosMarines Ahuanlla
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Whaleejaa Wha
 
programacion orientada a objetos en visual basic net
programacion orientada a objetos en visual basic netprogramacion orientada a objetos en visual basic net
programacion orientada a objetos en visual basic netpp mm
 
Programación orientada a objetos, fundamentos
Programación orientada a objetos, fundamentosProgramación orientada a objetos, fundamentos
Programación orientada a objetos, fundamentosEdna Rheiner
 
10. programacion orientada a objetos en visual basic .net
10.  programacion orientada a objetos en visual basic .net10.  programacion orientada a objetos en visual basic .net
10. programacion orientada a objetos en visual basic .netjohnny herrera
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Josue Lara Reyes
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a ObjetosJuan Carlos Riva
 

La actualidad más candente (20)

Definición de clases en POO
Definición de clases en POODefinición de clases en POO
Definición de clases en POO
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
PROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETOPROGRAMACION ORIENTADA A OBJETO
PROGRAMACION ORIENTADA A OBJETO
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visual
 
Programación 3: Clases y objetos en Java
Programación 3: Clases y objetos en JavaProgramación 3: Clases y objetos en Java
Programación 3: Clases y objetos en Java
 
Fundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a ObjetosFundamentos de Programación Orientada a Objetos
Fundamentos de Programación Orientada a Objetos
 
Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.Elementos básicos de la programación orientada a objetos.
Elementos básicos de la programación orientada a objetos.
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 
Encapsulamiento
EncapsulamientoEncapsulamiento
Encapsulamiento
 
programacion orientada a objetos en visual basic net
programacion orientada a objetos en visual basic netprogramacion orientada a objetos en visual basic net
programacion orientada a objetos en visual basic net
 
Programación orientada a objetos, fundamentos
Programación orientada a objetos, fundamentosProgramación orientada a objetos, fundamentos
Programación orientada a objetos, fundamentos
 
10. programacion orientada a objetos en visual basic .net
10.  programacion orientada a objetos en visual basic .net10.  programacion orientada a objetos en visual basic .net
10. programacion orientada a objetos en visual basic .net
 
Poo presentacion
Poo presentacionPoo presentacion
Poo presentacion
 
Componentes en-poo
Componentes en-pooComponentes en-poo
Componentes en-poo
 
Conceptos basicos POO
Conceptos basicos POOConceptos basicos POO
Conceptos basicos POO
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)
 
POO sencillito
POO sencillitoPOO sencillito
POO sencillito
 
Programación Orientada a Objetos
Programación Orientada a ObjetosProgramación Orientada a Objetos
Programación Orientada a Objetos
 

Similar a TDA-Tipos de datos abstractos y sus aplicaciones

Estructurade datos
Estructurade datosEstructurade datos
Estructurade datosDavidElizama
 
Unidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUnidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosEzer Ayala Mutul
 
Unidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUnidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUrban Skate House
 
Presentacion unidad u1_estructura_de_datos_victor_uex
Presentacion unidad u1_estructura_de_datos_victor_uexPresentacion unidad u1_estructura_de_datos_victor_uex
Presentacion unidad u1_estructura_de_datos_victor_uexvictoruex
 
equipo 3 clasificación de estructura(2.pptx
equipo 3  clasificación de estructura(2.pptxequipo 3  clasificación de estructura(2.pptx
equipo 3 clasificación de estructura(2.pptxPedroSilva456418
 
PRESENTACION EVIDENCIAS RUBI VERONICA ISC J3 A
PRESENTACION EVIDENCIAS RUBI VERONICA ISC J3 APRESENTACION EVIDENCIAS RUBI VERONICA ISC J3 A
PRESENTACION EVIDENCIAS RUBI VERONICA ISC J3 AChisurin
 
Unidad 1 diana karina pech may
Unidad 1 diana karina pech mayUnidad 1 diana karina pech may
Unidad 1 diana karina pech mayKarina1602
 
Primera unidad de_estructura_de_datos_juana_contreras_pelaez_isc_3_semestre_a
Primera unidad de_estructura_de_datos_juana_contreras_pelaez_isc_3_semestre_aPrimera unidad de_estructura_de_datos_juana_contreras_pelaez_isc_3_semestre_a
Primera unidad de_estructura_de_datos_juana_contreras_pelaez_isc_3_semestre_aJuanita Qontreras
 
Tad,estatica,dimanica
Tad,estatica,dimanicaTad,estatica,dimanica
Tad,estatica,dimanicapootalex
 

Similar a TDA-Tipos de datos abstractos y sus aplicaciones (20)

Estructuta de datos
Estructuta de datosEstructuta de datos
Estructuta de datos
 
Estructurade datos
Estructurade datosEstructurade datos
Estructurade datos
 
Unidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUnidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datos
 
Unidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datosUnidad 1 introducción a las estructuras de datos
Unidad 1 introducción a las estructuras de datos
 
Estructura de datos pdf
Estructura de datos pdfEstructura de datos pdf
Estructura de datos pdf
 
Tipos de datos abstractos
Tipos de datos abstractosTipos de datos abstractos
Tipos de datos abstractos
 
Presentacion unidad u1_estructura_de_datos_victor_uex
Presentacion unidad u1_estructura_de_datos_victor_uexPresentacion unidad u1_estructura_de_datos_victor_uex
Presentacion unidad u1_estructura_de_datos_victor_uex
 
equipo 3 clasificación de estructura(2.pptx
equipo 3  clasificación de estructura(2.pptxequipo 3  clasificación de estructura(2.pptx
equipo 3 clasificación de estructura(2.pptx
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
PRESENTACION EVIDENCIAS RUBI VERONICA ISC J3 A
PRESENTACION EVIDENCIAS RUBI VERONICA ISC J3 APRESENTACION EVIDENCIAS RUBI VERONICA ISC J3 A
PRESENTACION EVIDENCIAS RUBI VERONICA ISC J3 A
 
Evidencias1 (Diapositivas - Rubi Veronica)
Evidencias1 (Diapositivas  - Rubi Veronica)Evidencias1 (Diapositivas  - Rubi Veronica)
Evidencias1 (Diapositivas - Rubi Veronica)
 
Unidad 1 diana karina pech may
Unidad 1 diana karina pech mayUnidad 1 diana karina pech may
Unidad 1 diana karina pech may
 
unidad 1 INTRODUCCION A LAS ESTUCTURAS DE DATOS
unidad 1 INTRODUCCION A LAS ESTUCTURAS DE DATOSunidad 1 INTRODUCCION A LAS ESTUCTURAS DE DATOS
unidad 1 INTRODUCCION A LAS ESTUCTURAS DE DATOS
 
Primera unidad de_estructura_de_datos_juana_contreras_pelaez_isc_3_semestre_a
Primera unidad de_estructura_de_datos_juana_contreras_pelaez_isc_3_semestre_aPrimera unidad de_estructura_de_datos_juana_contreras_pelaez_isc_3_semestre_a
Primera unidad de_estructura_de_datos_juana_contreras_pelaez_isc_3_semestre_a
 
Tema1 (2)
Tema1 (2)Tema1 (2)
Tema1 (2)
 
Programacion o.o.
Programacion o.o.Programacion o.o.
Programacion o.o.
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Tad,estatica,dimanica
Tad,estatica,dimanicaTad,estatica,dimanica
Tad,estatica,dimanica
 

TDA-Tipos de datos abstractos y sus aplicaciones

  • 1. INSTITUTO TECNOLÓGICO SUPERIO DE FELIPE CARRILLO PUERTO ING: Sistemas Computacionales Estructura de Datos Ezer Abisai Ayala Mutul Niels Henryk Aranda Cuevas 3er Semestre Grupo “A” Felipe carrillo puerto Quintana Roo a 28 de septiembre del 2014
  • 2. TIPOS DE DATOS ABSTRACTOS (TDA) Es el elemento básico de la abstracción de datos. Un TDA es un tipo de dato definido por el programador que se puede manipular de un modo similar a los tipos de datos definidos por el lenguaje. Si los tipos de datos existentes en el lenguaje no son suficientes o no son eficientes para ciertas aplicaciones, la mayoría de los lenguajes de programación permiten a usuario definir sus propios tipos de datos. Esta definición consiste en establecer los elementos de que consta el tipo, así como las operaciones que se pueden realizar con instancias de este tipo.
  • 3. APLICACIONES Las dos aplicaciones tradicionales de los TDA es la definición de una lista o de una pila, ambos conceptos son muy útiles en el área de las estructuras de datos: 1. Una pila es una colección dinámica de datos de un mismo tipo, en las que los elementos se insertan y se extraen sobre un mismo extremo. 2. Una lista es también una colección dinámica de datos de un mismo tipo, se considera aquí que cada elemento de la lista tiene un único predecesor (excepto el primer elemento) y un único sucesor (excepto el ultimo elemento).
  • 4. DECLARACIÓN Para construir un tipo abstracto se debe: 1. Establecer la definición del tipo 2. Definir las operaciones (funciones y procedimientos) que pueden operar con dicho tipo 3. Ocultar la presentación de los elementos del tipo de modo que solo se pueda trabajar con ellos usando los procedimientos definidos en 2 4. Poder crear instancias múltiples del tipo
  • 5. La declaración de RDA´S requiere al menos el uso de dos palabras reservadas en C++.  Struct. Struct define una estructura de datos; este permite crear un tipo de dato que esta compuesto de unos o varios elementos denominados campos (variables definidos por el lenguaje).
  • 6.  Typedef. Se utiliza para definir el “alias” o sinónimo de un tipo de datos. Se esta definiendo un nuevo tipo de datos llamado persona, que contiene exactamente la misma estructura y elementos Tipo_Persona definida arriba por eso se dice que son sinónimos. En otras palabras existiría un nuevo tipo en el lenguaje. La sintaxis de las dos palabras claves incluidas aquí es la siguiente:
  • 7. OPERACIONES SOBRE UN TDA Las operaciones que se aplican a un TDA (numeral 2) generalmente caen dentro de los siguientes tipos básicos: 1. Construcción: crean una nueva instancia del tipo 2. Transformación: cambia el valor de uno o mas elementos del tipo 3. Observación: permiten determinar el valor de uno o mas elementos de un tipo sin modificarse 4. Iteradores: permiten procesar todos los datos de un TDA en forma secuencial
  • 8. MEMORIA ESTÁTICA Es la memoria que se reserva en el momento de la compilación antes de empezar a ejecutar el programa. Los objetos son creados al iniciar el programa y destruidos al finalizar el mismo. Mantienen las misma localización en memoria durante todo el transcurso del programa hasta que son destruidos. Los objetos administradores de este modo son: variables globales, variables estáticas de funciones, miembros estatic de clases y literales de cualquier tipo.
  • 9. CONSIDERACIONES 1. Error de un tiempo de ejecución de índice fuera de rango 2. Se debe de conocer la anticipación el tamaño de la estructura V[3], M[2,2], C[5,3,2] 3. Se guarda en memoria adyacente ejem 4. Vectores, matrices, cubos, registros, archivos Ventajas 1. Lógica simple 2. Optimo para resolver problemas P y M Desventajas 1. No se puede modificar el tamaño de las estructuras en T.D.E 2. No se optimiza con grandes cantidades de datos 3. Desperdicio de memoria cuando no se utiliza la totalidad del tamaño por ejem V[100]
  • 10. MEMORIA DINÁMICA La memoria dinámica se refiere a aquella memoria que no ´puede ser definida ya que no se conoce o no se tiene idea del numero dela variable a considerarse, la solución a este problema es la memoria dinámica que permite solicitar memoria en tiempo de ejecución, por lo que cuanta mas memoria se necesite , mas se necesita el sistema operativo. El sistema operativo maneja la memoria gracias al uso de punteros, por la misma naturaleza del proceso nos impide conocer el tamaño de la memoria necesaria en el momento de compilar.
  • 11. Consideraciones 1. Manejo transparente del tamaño de la estructura 2. Se guarda donde se encuentra el espacio 3. No se guarda necesariamente en memoria adyacente Ventajas 1. El tamaño de la estructura no se infiera en la lógica del programa Desventajas Las estructuras de datos son una forma avanzada de manejar datos en tiempo de ejecución
  • 12. CONCLUSIÓN GENERAL Es esta unidad llamada introducción a las estructuras de datos vimos los tipos de datos, nos pudimos dar cuenta que para construir un tipo de dato abstracto se necesita un serie de pasos que en desarrollo de esta presentación se menciono. un ejemplo mostrado es la de un a pila que es una colección dinámica de datos de un mismo tipo, en la que los elementos se insertan por un mismo tipo. Todo esto lo podemos aplicar para crear programas que nos puedan ayudar con el control de los resultados de los exámenes de alumnos, para calcular la edad de algunas personas y saber si tienen la misma edad o son diferentes