SlideShare una empresa de Scribd logo
1 de 11
Introducción a los tipos de
datos abstractos
Definición de abstracción de
datos
ABSTRACCIÓN DE DATOS (Ocultamiento de
  Información)

Abstracción: idea general que se concentra
  sobre las cualidades esenciales de algún
  objeto del mundo real más que sobre la
  realización concreta del mismo.

La abstracción consiste en enfocar los aspectos
  esenciales inherentes a una entidad e ignorar
  las propiedades accidentales.
Conceptos básicos
La abstracción como proceso: consiste en
  separar las propiedades esenciales de un
  objeto, sistema, fenómeno o problema y/o
  omitir las propiedades no esenciales.


   La abstracción como producto: es una
    descripción o especificación de un sistema en
    el que se enfatizan algunos detalles o
    propiedades y se suprimen otros. Es
    importante destacar que las propiedades
    esenciales de un sistemas son tratadas como
    un todo.
Conceptos básicos
   Tipo de datos abstractos
   Una herramienta útil para especificar las propiedades
    lógicas de los tipos de datos abstractos (TDA), el cual
    es fundamentalmente una colección de valores y un
    conjunto de operaciones sobre esos valores. La
    colección de valores y las operaciones sobre esos
    valores forman una construcción matemática que
    pueden implementarse utilizando una estructura de
    dato particular ya sea de hardware o de software.
Conceptos básicos
   Definición: "Si se posee un tipo de dato
    llamado T que se define como una clase de
    valores y una colección de operaciones sobre
    esos valores, y si las propiedades de esas
    operaciones son especificadas solamente con
    axiomas, entonces T es un TDA".


   Un TDA al momento de la implantación, debe
    de    cumplir   con   las   especificaciones
    algebraicas de sus operaciones (SINTAXIS Y
    SEMÁNTICA).
Conceptos básicos
   La correcta especificación (según Gutag) de
    un TDA debe ser: 
   A.-Especificación Sintáctica:
   Aquí se tratan las funciones u operaciones
    que actúan sobre las instancias de T,
    definiéndose los nombres, dominios y rangos
    de dichas funciones. Estas operaciones
    pueden clasificarse de la siguiente manera:

Tipos de operaciones
   1. Operación  Constructor:        esta operación
    produce una nueva instancia para el tipo de dato
    abstracto, proveyendo al usuario de una capacidad
    de para generar dinámicamente instancias de nuevos
    objetos y asignarles valores por defecto a las
    propiedades (atributos) del TDA. Aparta memoria
    principal.


   2. Operación  Destructor: elimina aquellas
    instancias del tipo de dato T que el usuario tiene en
    desuso. Libera memoria principal.

Tipos de operaciones
   3. Operación  de  Acceso: permite al
    usuario obtener elementos que sólo son
    propiedades del tipo de dato del sistema.


   4. Operación      de     Transformación:
    producen nuevos elementos del tipo de dato
    abstracto, partiendo del elemento ya
    existente   y   posiblemente    de   otros
    argumentos.

Tipos de operaciones
   Se observa el efecto que tiene cada una de
    las operaciones especificadas sobre el resto
    de las operaciones del TDA. Para esta
    especificación se realiza la siguiente tabla:
    Nombre de la operación
   Dominio de los argumentos
   Rango de los resultados
   Tipo de operación
Especificación del TDA
 B.- Especificación Semántica:
Se compone de un conjunto de axiomas en
  forma de ecuaciones las cuales indican como
  operan cada una de las operaciones del tipo
  de dato abstracto al ser especificadas sobre
  las operaciones restantes del mismo tipo de
  dato abstracto.
 Operaciones válidas sobre la estructura de

  datos del TDA, y cuales son los resultados
  que cada una de las operaciones regresa una
  vez que se haya ejecutado.
Propiedades de un TDA
PPropiedades de los TDA
     Encapsulación: un TDA encapsula ciertos
  tipos de datos y operaciones con el objetivo
  de localizar en un punto determinado de su
  programa la especificación del TDA.
     Generalización: un programador es libre
  de definir sus propios tipos de datos y sus
  propias operaciones con el objetivo de
  aplicarlos    a     operandos     que     no
  necesariamente tiene que ser de un tipo
  fundamental.

Más contenido relacionado

La actualidad más candente

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
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoriaIronAngel
 
Abstracción de datos en java
Abstracción de datos en java Abstracción de datos en java
Abstracción de datos en java Izayoi Sakamaki
 
Estructuras en C
Estructuras en CEstructuras en C
Estructuras en CVane Borjas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasMaxDLeon
 
Estructura de datos presentacion y sesion 1
Estructura de datos presentacion y sesion 1Estructura de datos presentacion y sesion 1
Estructura de datos presentacion y sesion 1Jesús Gómez Ávila
 
Clase 10_ programacion
Clase 10_ programacionClase 10_ programacion
Clase 10_ programaciondiego MC
 
Tipos abstractos de datos
Tipos abstractos de datosTipos abstractos de datos
Tipos abstractos de datosJose Armando
 
Entendiendo estructura de datos
Entendiendo estructura de datosEntendiendo estructura de datos
Entendiendo estructura de datosyacomas
 
Metodo de ordenacion por Insercion
 Metodo de ordenacion por Insercion Metodo de ordenacion por Insercion
Metodo de ordenacion por InsercionMateo Falcon
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busquedaIrvingMoran4
 

La actualidad más candente (20)

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
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
 
Modelo Dinamico
Modelo DinamicoModelo Dinamico
Modelo Dinamico
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
 
Abstracción de datos en java
Abstracción de datos en java Abstracción de datos en java
Abstracción de datos en java
 
Estructuras en C
Estructuras en CEstructuras en C
Estructuras en C
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
concepto de estructuras de datos
concepto de estructuras de datosconcepto de estructuras de datos
concepto de estructuras de datos
 
Estructura de Datos - Unidad II Recursividad
Estructura de Datos - Unidad II RecursividadEstructura de Datos - Unidad II Recursividad
Estructura de Datos - Unidad II Recursividad
 
Estructura de datos presentacion y sesion 1
Estructura de datos presentacion y sesion 1Estructura de datos presentacion y sesion 1
Estructura de datos presentacion y sesion 1
 
Modelo Estatico
Modelo EstaticoModelo Estatico
Modelo Estatico
 
Modelo Estatico
Modelo EstaticoModelo Estatico
Modelo Estatico
 
Roger trabajo
Roger trabajoRoger trabajo
Roger trabajo
 
Ape unidad4
Ape unidad4Ape unidad4
Ape unidad4
 
Programacion
ProgramacionProgramacion
Programacion
 
Clase 10_ programacion
Clase 10_ programacionClase 10_ programacion
Clase 10_ programacion
 
Tipos abstractos de datos
Tipos abstractos de datosTipos abstractos de datos
Tipos abstractos de datos
 
Entendiendo estructura de datos
Entendiendo estructura de datosEntendiendo estructura de datos
Entendiendo estructura de datos
 
Metodo de ordenacion por Insercion
 Metodo de ordenacion por Insercion Metodo de ordenacion por Insercion
Metodo de ordenacion por Insercion
 
Ordenacion y busqueda
Ordenacion y busquedaOrdenacion y busqueda
Ordenacion y busqueda
 

Similar a Datos abstractos

Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptxResumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptxDELIAMARINAHERAZOTUI
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosJosé Antonio Sandoval Acosta
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02luisortiz
 
8. técnicas de escritura de códigos
8. técnicas de escritura de códigos8. técnicas de escritura de códigos
8. técnicas de escritura de códigosHectorMamani
 
Implementacion informatica
Implementacion informaticaImplementacion informatica
Implementacion informaticaLuis Stifler
 
Abstracción en programación
Abstracción en programaciónAbstracción en programación
Abstracción en programaciónRicardo Dominguez
 
Introducción a Tipos de Datos Abstractos (TDA)
Introducción a Tipos de Datos Abstractos (TDA)Introducción a Tipos de Datos Abstractos (TDA)
Introducción a Tipos de Datos Abstractos (TDA)Fernando Solis
 
ingeniería de requerimientos de software
ingeniería de requerimientos de softwareingeniería de requerimientos de software
ingeniería de requerimientos de softwareRumbaut
 
Maria taipe..presentaciones
Maria taipe..presentacionesMaria taipe..presentaciones
Maria taipe..presentacionesmary taipe
 
Maria taipe..presentaciones
Maria taipe..presentacionesMaria taipe..presentaciones
Maria taipe..presentacionesmary taipe
 
Jyoc java-cap19 tad (tipos abstractos de datos)
Jyoc java-cap19 tad (tipos abstractos de datos)Jyoc java-cap19 tad (tipos abstractos de datos)
Jyoc java-cap19 tad (tipos abstractos de datos)Jyoc X
 
6. tda arrayu generico
6. tda arrayu generico6. tda arrayu generico
6. tda arrayu genericoAna Ocaña
 

Similar a Datos abstractos (20)

Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptxResumen Programación Orientada a Objetos 20_06_2023 (1).pptx
Resumen Programación Orientada a Objetos 20_06_2023 (1).pptx
 
1.1 tda
1.1 tda1.1 tda
1.1 tda
 
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datosEstructura de datos - Unidad 1: Introducción a las estructuras de datos
Estructura de datos - Unidad 1: Introducción a las estructuras de datos
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02
 
Semanas01y02
Semanas01y02Semanas01y02
Semanas01y02
 
Tdas
TdasTdas
Tdas
 
8. técnicas de escritura de códigos
8. técnicas de escritura de códigos8. técnicas de escritura de códigos
8. técnicas de escritura de códigos
 
Implementacion informatica
Implementacion informaticaImplementacion informatica
Implementacion informatica
 
Abstracción en programación
Abstracción en programaciónAbstracción en programación
Abstracción en programación
 
Introducción a Tipos de Datos Abstractos (TDA)
Introducción a Tipos de Datos Abstractos (TDA)Introducción a Tipos de Datos Abstractos (TDA)
Introducción a Tipos de Datos Abstractos (TDA)
 
Requerimientos2.ppt
Requerimientos2.pptRequerimientos2.ppt
Requerimientos2.ppt
 
ingeniería de requerimientos de software
ingeniería de requerimientos de softwareingeniería de requerimientos de software
ingeniería de requerimientos de software
 
Requerimientos2
Requerimientos2Requerimientos2
Requerimientos2
 
Lenguajes unificados.pptx
Lenguajes unificados.pptxLenguajes unificados.pptx
Lenguajes unificados.pptx
 
Benita ppp unidad 1
Benita ppp unidad 1Benita ppp unidad 1
Benita ppp unidad 1
 
Uso de TDA.pptx
Uso de TDA.pptxUso de TDA.pptx
Uso de TDA.pptx
 
Maria taipe..presentaciones
Maria taipe..presentacionesMaria taipe..presentaciones
Maria taipe..presentaciones
 
Maria taipe..presentaciones
Maria taipe..presentacionesMaria taipe..presentaciones
Maria taipe..presentaciones
 
Jyoc java-cap19 tad (tipos abstractos de datos)
Jyoc java-cap19 tad (tipos abstractos de datos)Jyoc java-cap19 tad (tipos abstractos de datos)
Jyoc java-cap19 tad (tipos abstractos de datos)
 
6. tda arrayu generico
6. tda arrayu generico6. tda arrayu generico
6. tda arrayu generico
 

Más de Eliezer Cordova

Más de Eliezer Cordova (20)

Tipos de comunicacion
Tipos de comunicacionTipos de comunicacion
Tipos de comunicacion
 
Presentacion 3
Presentacion 3Presentacion 3
Presentacion 3
 
Presentacion 2
Presentacion 2Presentacion 2
Presentacion 2
 
Presentacion 2
Presentacion 2Presentacion 2
Presentacion 2
 
Presentacion 1
Presentacion 1Presentacion 1
Presentacion 1
 
Introduccion publisher
Introduccion publisherIntroduccion publisher
Introduccion publisher
 
Presentaciones efectivas
Presentaciones efectivasPresentaciones efectivas
Presentaciones efectivas
 
Resolucion de problemas
Resolucion de problemasResolucion de problemas
Resolucion de problemas
 
Programación
ProgramaciónProgramación
Programación
 
Presentacion aula virtual videoconferencia
Presentacion aula virtual videoconferenciaPresentacion aula virtual videoconferencia
Presentacion aula virtual videoconferencia
 
Metodología para la creación de algoritmos 0
Metodología para la creación de algoritmos 0Metodología para la creación de algoritmos 0
Metodología para la creación de algoritmos 0
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.ppt
 
Presentacion uno
Presentacion unoPresentacion uno
Presentacion uno
 
Intro
IntroIntro
Intro
 
3 estructuras no lineales estáticas y dinámicas
3  estructuras no lineales estáticas y dinámicas3  estructuras no lineales estáticas y dinámicas
3 estructuras no lineales estáticas y dinámicas
 
2 arboles
2 arboles2 arboles
2 arboles
 
1 árbol
1 árbol1 árbol
1 árbol
 
Acciones funciones
Acciones funcionesAcciones funciones
Acciones funciones
 
3 funciones
3 funciones3 funciones
3 funciones
 
2 estructura programa-c
2 estructura programa-c2 estructura programa-c
2 estructura programa-c
 

Datos abstractos

  • 1. Introducción a los tipos de datos abstractos
  • 2. Definición de abstracción de datos ABSTRACCIÓN DE DATOS (Ocultamiento de Información) Abstracción: idea general que se concentra sobre las cualidades esenciales de algún objeto del mundo real más que sobre la realización concreta del mismo. La abstracción consiste en enfocar los aspectos esenciales inherentes a una entidad e ignorar las propiedades accidentales.
  • 3. Conceptos básicos La abstracción como proceso: consiste en separar las propiedades esenciales de un objeto, sistema, fenómeno o problema y/o omitir las propiedades no esenciales.   La abstracción como producto: es una descripción o especificación de un sistema en el que se enfatizan algunos detalles o propiedades y se suprimen otros. Es importante destacar que las propiedades esenciales de un sistemas son tratadas como un todo.
  • 4. Conceptos básicos  Tipo de datos abstractos  Una herramienta útil para especificar las propiedades lógicas de los tipos de datos abstractos (TDA), el cual es fundamentalmente una colección de valores y un conjunto de operaciones sobre esos valores. La colección de valores y las operaciones sobre esos valores forman una construcción matemática que pueden implementarse utilizando una estructura de dato particular ya sea de hardware o de software.
  • 5. Conceptos básicos  Definición: "Si se posee un tipo de dato llamado T que se define como una clase de valores y una colección de operaciones sobre esos valores, y si las propiedades de esas operaciones son especificadas solamente con axiomas, entonces T es un TDA".   Un TDA al momento de la implantación, debe de cumplir con las especificaciones algebraicas de sus operaciones (SINTAXIS Y SEMÁNTICA).
  • 6. Conceptos básicos  La correcta especificación (según Gutag) de un TDA debe ser:   A.-Especificación Sintáctica:  Aquí se tratan las funciones u operaciones que actúan sobre las instancias de T, definiéndose los nombres, dominios y rangos de dichas funciones. Estas operaciones pueden clasificarse de la siguiente manera: 
  • 7. Tipos de operaciones  1. Operación  Constructor: esta operación produce una nueva instancia para el tipo de dato abstracto, proveyendo al usuario de una capacidad de para generar dinámicamente instancias de nuevos objetos y asignarles valores por defecto a las propiedades (atributos) del TDA. Aparta memoria principal.   2. Operación  Destructor: elimina aquellas instancias del tipo de dato T que el usuario tiene en desuso. Libera memoria principal. 
  • 8. Tipos de operaciones  3. Operación  de  Acceso: permite al usuario obtener elementos que sólo son propiedades del tipo de dato del sistema.   4. Operación  de  Transformación: producen nuevos elementos del tipo de dato abstracto, partiendo del elemento ya existente y posiblemente de otros argumentos. 
  • 9. Tipos de operaciones  Se observa el efecto que tiene cada una de las operaciones especificadas sobre el resto de las operaciones del TDA. Para esta especificación se realiza la siguiente tabla:  Nombre de la operación  Dominio de los argumentos  Rango de los resultados  Tipo de operación
  • 10. Especificación del TDA  B.- Especificación Semántica: Se compone de un conjunto de axiomas en forma de ecuaciones las cuales indican como operan cada una de las operaciones del tipo de dato abstracto al ser especificadas sobre las operaciones restantes del mismo tipo de dato abstracto.  Operaciones válidas sobre la estructura de datos del TDA, y cuales son los resultados que cada una de las operaciones regresa una vez que se haya ejecutado.
  • 11. Propiedades de un TDA PPropiedades de los TDA  Encapsulación: un TDA encapsula ciertos tipos de datos y operaciones con el objetivo de localizar en un punto determinado de su programa la especificación del TDA.  Generalización: un programador es libre de definir sus propios tipos de datos y sus propias operaciones con el objetivo de aplicarlos a operandos que no necesariamente tiene que ser de un tipo fundamental.