Want to make creations as awesome as this one?

Transcript

Estructura de Datos

Instituto tecnologico de aguascalientesIngenieria en tic´sAlfonso recio hernandez 23151223 Alexia martinez vazquez

Definición

Las estructuras de datos es el sistema donde se almacena, procesa y organiza de manera eficiente en terminos de tiempo y espacio la información en la memoria de una aplicación que se esta ejecutando en el ordenador estas nos permiten acceder y manipular a los datos de manera rápida y sencilla.

Clasificación De Las Estructuras De Datos

Dinámicas
Estáticas

Estructuras de Datos Estaticas - Dinamicas

Son aquellas en las que el tamaño ocupado en memoria se define antes de que el programa se ejecute y no puede modificarse dicho tamaño durante la ejecución del programa. Su principal característica es que ocupan solo una casilla de memoria, por lo tanto una variable simple hace referencia a un único valor a la vez, dentro de este grupo de datos se encuentra: enteros, reales, caracteres, boléanos, enumerados y subrangos
Son aquellas en la que el tamaño ocupado en memoria puede modificarse durante la ejecución del programa. Las variables que se crean y están disponibles durante la ejecución del programa se llaman variables continuas. De esta manera se pueden adquirir posiciones adicionales de memoria a medida que se necesiten durante la ejecución del programa y liberarlas cuando no se necesiten.
Heterogéneas
Homogéneas

Estructuras de Datos Homogéneas y Heterogéneas

Son aquellas que almacenan elementos del mismo tipo, lo que permite una gestión eficiente y uniforme de los datos. Estas estructuras facilitan operaciones específicas y mantienen la consistencia en el manejo de la información. La homogeneidad en los datos asegura que las operaciones sobre la estructura sean rápidas y predecibles.
Son aquellas que almacenan elementos de diferentes tipos en una misma estructura, lo que ofrece flexibilidad para manejar datos variados. Estas estructuras son útiles cuando se necesita combinar distintos tipos de información bajo una sola entidad. Las heterogéneas no requieren que todos los elementos sean del mismo tipo, lo que facilita la representación de datos complejos y diversos.
Colas
Pilas
Listas Enlazadas

Estructuras de Datos Lineales

Se construyen con elementos que están ubicados en una secuencia cada elemento se conecta con el siguiente a través de un enlace que contiene la posición del siguiente elemento. Teniendo la referencia del principio de la lista podemos acceder a todos los elementos de la misma.
Los elementos de una pila se eliminan en orden inverso al que se insertaron; es decir, el último elemento que semete en la pila es el primero que se saca. No son estructuras fundamentales de datos, requieren el uso de otras estructuras de datos, como arreglos o listas.
Almacena elementos en una lista y permite acceder a los datos por uno de los dos extremos de la lista. Un elemento se inserta en la cola (parte final) de la lista y se suprime o elimina por la frente (parte inicial, cabeza) de la lista
Arboles
Grafos

Estructuras de Datos No Lineales

Los grafos son una composición interesante de conjuntos de objetos que denominamos nodos. En ellos se almacena diferentes tipos de elementos o datos que podemos utilizar para procesar o conocer con fines específicos.estos nodos, suelen estar unidos o conectados a otros nodos a través de elementos que denominamos aristas.
Un árbol es una estructura jerárquica en la que cada nodo puede tener varios hijos, pero solo un padre. Empieza con un nodo raíz y se extiende en ramas, formando una estructura en forma de árbol invertido. Es útil para organizar datos con relaciones jerárquicas, como sistemas de archivos o jerarquías organizativas, permitiendo operaciones eficientes como búsqueda, inserción y eliminación.
Diccionario
Heap
Hash Tables

Estructuras de Datos Especializadas

Asocia llaves o claves con valores. La operación principal que soporta de manera eficiente es la búsqueda: permite el acceso a los elementos almacenados a partir de una clave generada. Almacenan la información en posiciones aleatorias, así que el acceso ordenado a su contenido es bastante lento.
Soporta solo 3 operaciones: conocer la cima del montículo, eliminar el elemento de la cima y agregar un nuevo elemento. Hay problemas donde solo se requiere saber el elemento mayor, o en otras ocaciones se requiere conocer el menor
Un diccionario almacena pares de valores que constan de una llave y un valor (key-value) la llave es la que nos da acceso directo a el valor, de esta forma podemos almacenar datos para después encontrarlos fácilmente

Estructuras de datos de mayor uso en la programación, sus características y operaciones básicas.

CARACTERISTICASHomogeneidad: Todos los elementos de un arreglo son del mismo tipo.Ordenamiento: Los elementos de un arreglo están ordenadosFinitud: Los arreglos tienen un límiteEstaticidad: Los arreglos son estructuras de datos estáticasAlmacenamiento en memoria: Los arreglos se encuentran en la memoria principal de la computadora. OPERACIONESAcceso: Puedes ver el elemento que está en la posición i de la lista usando array[i].Modificación: Puedes cambiar el valor que está en la posición i usando array[i] = valor. Recorrido: Puedes mirar todos los elementos de la lista uno por uno usando un bucle. Búsqueda: Puedes buscar un elemento específico en la lista.

Estructuras de Datos de Mayor uso en la Programación

Arreglos

CARACTERISTICASSon autorreferenciadas: Contienen un puntero, también conocido como enlace, que apunta a otro dato del mismo tipo. Los nodos pueden contener datos de cualquier tipo: Incluyendo objetos de otras clases.Los nodos se enlazan entre sí: El puntero sirve para enlazar cada nodo con el resto de nodos que conforman la lista. OPERACIONESInserción: Agrega un nuevo nodo a la lista en una posición específica, ya sea al principio, al final o en cualquier lugar intermedio. Eliminación: Puedes eliminar un nodo de la lista, ya sea por su valor o por su posición. Búsqueda: Puedes recorrerla desde el principio hasta el final y comparar cada nodo con el valor buscado. Recorrido: Recorrer la lista enlazada y realizar alguna operación en cada nodo, como imprimir su valor o realizar algún cálculo.

Estructuras de Datos de Mayor uso en la Programación

Listas Enlazadas

CARACTERISTICAS-Son listas ordenadas de elementos-El acceso a los elementos se realiza de forma LIFO (Last In, First Out), es decir, el último elemento en entrar es el primero en salir -Solo tienen una puerta de acceso para insertar y eliminar datos -El extremo donde se añaden y eliminan los elementos se llama "tope".OPERACIONESPush: Agrega un elemento a la pila Pop: Elimina el elemento superior de la pila Peek: Obtiene el elemento superior sin eliminarlo Empty: Verifica si la pila está vacía Size: Obtiene el tamaño de la pila

Estructuras de Datos de Mayor uso en la Programación

Pilas

Usos y/o AplicacionesDe Las Estructuras De Datos

Usos y Aplicaciones de las Estructuras de Datos

Motores de búsqueda: árboles y gráficos Los motores de búsqueda como Google utilizan estructuras de datos como árboles y gráficos para mantener y organizar páginas web en su base de datos. Permite a los motores de búsqueda recorrer la web, indexar sitios web y devolver rápidamente resultados de búsqueda muy relevantes.Bases de datos: tablas hash, árboles B Las tablas hash se utilizan para indexar y buscar datos, lo que proporciona tiempos rápidos de inserción y recuperación.Lo que permite un almacenamiento y recuperación eficientes en sistemas basados ​​en disco. Algoritmos de enrutamiento: gráficos, colas de prioridadLos enrutadores de red utilizan estructuras de datos como gráficos y colas de prioridad para calcular y encontrar las rutas más cortas entre diferentes nodos o puntos de la red. Los enrutadores pueden determinar rápidamente las rutas óptimas para la transmisión de paquetes de datos a través de redes.

Usos y Aplicaciones de las Estructuras de Datos

Editores de texto: pilas, matrices Las estructuras de datos como pilas y matrices son parte integral del software cotidiano, como los editores de texto. Las pilas se utilizan para gestionar operaciones de deshacer y rehacer en un editor, mientras que las matrices almacenan los caracteres individuales. Estas estructuras de datos permiten agregar, eliminar, copiar y pegar texto de manera eficiente.Procesamiento de imágenes: matrices Las matrices se utilizan mucho en aplicaciones de procesamiento de imágenes. Las imágenes se representan como una matriz bidimensional de píxeles, donde cada píxel tiene un valor de color específico. Al acceder y manipular los valores de la matriz, los desarrolladores pueden realizar diversas tareas de procesamiento de imágenes, como cambiar el tamaño, filtrar o transformar.

¡Fin De La Presentación!