3.9 KiB
Bloque 2 Tema 3. Tipos abstractos y estructuras de datos. Organizaciones de ficheros. Algoritmos. Formatos de información y ficheros.
Introducción
Este tema introduce los conceptos fundamentales de programación y tratamiento de la información desde un punto de vista teórico y abstracto.
En el examen TAI no se pregunta código, sino definiciones, clasificaciones y conceptos básicos.
1. Tipos abstractos de datos
Un tipo abstracto de datos, abreviado como TAD, es una definición lógica de un conjunto de datos y de las operaciones que se pueden realizar sobre ellos, sin especificar cómo se implementa.
Las características principales de un TAD son la abstracción, la independencia de la implementación y la encapsulación de datos y operaciones.
Ejemplos de tipos abstractos de datos son la pila, la cola y la lista.
Importante para examen
Un TAD define qué hace, no cómo se hace.
2. Estructuras de datos
Una estructura de datos es la forma concreta de organizar y almacenar datos en memoria para facilitar su acceso y modificación.
Importante para examen
El TAD es el concepto abstracto. La estructura de datos es la implementación concreta.
Las estructuras de datos se clasifican en dos grandes grupos: lineales y no lineales.
Las estructuras de datos lineales son las siguientes.
Los arrays, también llamados vectores, almacenan elementos del mismo tipo en posiciones contiguas.
Las listas son secuencias de elementos enlazados.
Las pilas siguen el principio LIFO: el último en entrar es el primero en salir.
Las colas siguen el principio FIFO: el primero en entrar es el primero en salir.
Importante para examen
Pila es LIFO: último en entrar, primero en salir. Cola es FIFO: primero en entrar, primero en salir.
Las estructuras de datos no lineales son los árboles y los grafos.
3. Organizaciones de ficheros
Un fichero es un conjunto de registros relacionados almacenados en un soporte, identificado por un nombre.
Dentro de un fichero, un registro es un conjunto de campos relacionados, y un campo es la unidad mínima de información.
Los ficheros se organizan de tres formas según el tipo de acceso.
La organización secuencial accede a los registros en orden, uno tras otro.
La organización directa o aleatoria permite acceder directamente a cualquier registro sin recorrer los anteriores.
La organización indexada usa índices para localizar los registros de forma eficiente.
4. Algoritmos
Un algoritmo es un conjunto finito y ordenado de instrucciones que permite resolver un problema.
Un algoritmo debe cumplir tres características: ser finito, ser preciso y estar bien definido.
Los algoritmos se pueden representar de varias formas: en lenguaje natural, en pseudocódigo o mediante diagramas de flujo.
Importante para examen
En el examen TAI no se pide programar, solo identificar y comprender conceptos sobre algoritmos.
5. Formatos de información y ficheros
Un formato de fichero define la estructura y codificación de los datos almacenados en un archivo.
Los formatos se clasifican en dos tipos: formatos de texto y formatos binarios.
Los formatos de texto son legibles directamente por personas. Ejemplos: TXT, CSV, XML y JSON.
Los formatos binarios no son legibles directamente. Ejemplos: PDF, DOCX, XLSX y JPG.
Importante para examen
Texto significa legible. Binario significa no legible directamente.
Resumen final del tema
Un tipo abstracto de datos define datos y operaciones de forma abstracta, sin indicar la implementación.
Las estructuras de datos son implementaciones concretas de los TAD.
Las estructuras lineales más importantes son las pilas y las colas. Pila es LIFO y cola es FIFO.
Los ficheros organizan registros formados por campos.
Un algoritmo es un conjunto finito y ordenado de instrucciones para resolver un problema.
Los formatos de fichero pueden ser de texto o binarios.