Tipo de datos abstracto de estructura de datos

Introducción:
En lenguaje C, según diferentes valores, los tipos de datos se pueden dividir en dos categorías:

  • Tipo atómico: Es
    un tipo básico que no se puede descomponer, incluyendo entero, real, carácter, etc.
  • Tipo de estructura: Se compone de varios tipos y se puede descomponer. Por ejemplo, una matriz de enteros se compone de varios datos enteros.
    Por ejemplo, la declaración de variable int a, b en lenguaje C significa que el rango de valores de int no se puede exceder al asignar valores a las variables ayb, y las operaciones entre las variables ayb solo pueden ser permitidas por el tipo int Operación.

Debido a que diferentes computadoras tienen diferentes sistemas de hardware, esto requiere que el lenguaje de programación se convierta finalmente a un lenguaje de bajo nivel a través de un compilador o intérprete, como el lenguaje ensamblador o incluso a través de tipos de datos en lenguaje de máquina. Pero, de hecho, no importa en qué computadora se ejecute el programa final, el propósito de un programador de lenguaje de alto nivel es lograr la aritmética de dos números enteros, como a + b, ab, a × by a / b. No me importa cómo se representan los enteros dentro de la computadora, y no quiero saber cuántas operaciones de conmutación realiza la CPU para lograr 1 + 2. La forma en que se implementan estas operaciones no es importante para los desarrolladores de lenguaje de alto nivel. Así que consideraremos que no importa qué computadora o lenguaje de computadora, la mayoría enfrentará operaciones como aritmética de números enteros, aritmética de números reales y aritmética de caracteres. Podemos considerar abstraerlas todas.

La abstracción se refiere a extraer la esencia universal de las cosas. Extrae las características del problema e ignora los detalles no esenciales, es una generalización de cosas específicas. La abstracción es una forma de pensar sobre los problemas, esconde detalles complicados y solo retiene la información necesaria para lograr el objetivo.

Definición: cuando
abstraemos los tipos de datos existentes, tenemos tipos de datos abstractos.

Tipo de datos abstractos (ADT) : se refiere a un modelo matemático y un conjunto de operaciones definidas en el modelo. La definición de un tipo de datos abstracto depende solo de su conjunto de características lógicas y no tiene nada que ver con cómo se representa e implementa dentro de la computadora.

Por ejemplo, cada computadora, ya sea una computadora central, una minicomputadora, una PC, una tableta, una PDA o incluso un teléfono inteligente, tiene un tipo "entero" y requiere operaciones entre números enteros. Entonces, el tipo entero es en realidad un resumen tipo de datos, aunque esté en Los métodos de implementación mencionados anteriormente pueden ser diferentes en diferentes computadoras, pero debido a las mismas propiedades matemáticas de sus definiciones, a los ojos de los programadores de computadoras, todos son iguales. Por lo tanto, el significado de "abstracción" radica en la abstracción matemática de los tipos de datos.

Además, los tipos de datos abstractos no solo se refieren a los tipos de datos que han sido definidos e implementados, sino también a los tipos de datos definidos por los programadores de computadoras al diseñar programas de software. Por ejemplo, cuando escribimos sistemas de software en gráficos o mapas de computadora, a menudo los usamos. A las coordenadas. En otras palabras, siempre hay pares de xey, yz en el sistema 3D. Dado que estos tres números enteros siempre aparecen juntos, definimos un tipo de datos abstracto llamado punto, que tiene x, y, z son tres variables enteras, de modo que podamos manipular fácilmente una variable de datos de punto para conocer las coordenadas de este punto.

De hecho, el tipo de datos abstracto incorpora las características de descomposición de problemas, abstracción y ocultación de información en el diseño de programas. El tipo de datos abstracto descompone los problemas en la vida real en múltiples problemas de pequeña escala y fáciles de manejar, y luego establece un modelo de datos que puede ser procesado por una computadora y trata los detalles de implementación de cada módulo funcional como una unidad independiente. , para realizar la realización concreta. El proceso está oculto.

Para facilitar la descripción estandarizada de tipos de datos abstractos, se proporciona un formato estándar para describir los tipos de datos abstractos:

ADT 
    抽象数据类型名
Data
    数据元素之间逻辑关系的定义
Operation
    操作1
        初始条件
        操作结果描述
    操作2
        ......
    操作n
        ......
endADT

Supongo que te gusta

Origin blog.csdn.net/xun08042/article/details/112845938
Recomendado
Clasificación