Guia Estructura
Guia Estructura
Guia Estructura
Hoy conjunto de valores que puede tomar una variable y sus operaciones
-compuestos /agregados. son aquellos que se pueden dividir en otros que tengan
significado, entidades que se construyen a partir de otros tipos.(arreglos, cadenas)
¿Qué es la abstracción?
Una clase está formada por atributos (datos) y métodos (operaciones) con los que
se pueden manipular dichos datos
El tipo de datos definido por el usuario, tipo de dato que está formado de datos y los
métodos o funciones con los que se pueden manipular dichos datos
https://es.educaplay.com/recursos-educativos/5152786-estructuras_de_datos.html
¿Qué representa el manejo de memoria?
1.5
*La teoría de complejidad de los algoritmos tiene que ver directamente con su
eficiencia.
*La Eficiencia de un algoritmo está determinada por la cantidad de recursos que
consume un programa durante su ejecución.
*A menor consumo de recurso(tiempo/espacio) será mayor la eficiencia.
2) Espacio en memoria
o
Complejidad Espacial:
Se denota por la letra “E” y expresa la cantidad de memoria que requiere un
programa. Depende principalmente del número de variables que utiliza y del espacio
que cada variable ocupa.
• ¿Cómo se puede definir la eficiencia de un algoritmo?
Características basadas en el consumo de recursos
• ¿Cuáles son los recursos en los que se basa la eficiencia de los algoritmos?
Tiempo y espacio
• Representa la cantidad de memoria requerida por un programa, depende de
la cantidad y el tamaño de variable que usa.
Complejidad espacial.
*factores*-------------------------------------------------------------------------------------
• ¿Cuáles son los factores que de los que depende la eficiencia del programa?
Características:
Características:
Notaciones asintóticas--------------------------------------------------------------------------------
***nota***
Orden
(3+1)
Ordenes de complejidad---------------------------------------------------------------------------------
O (1) Orden Constante: Indica cuando las instrucciones se ejecutan una sola
vez.
O (log n) Orden Logarítmico: en el doble de tiempo permiten resolver
problemas notablemente mayores y para resolver un problema doblemente
mayor solo hace falta un poco más de tiempo, pero nunca el doble.
O(n) Orden lineal: son el doble de datos a procesar nos dará el doble de tiempo
de ejecución
O (n log n) Orden Cuasi-lineal: si n se duplica el tiempo de ejecución es
ligeramente mayor del doble.
O (n2) Orden Cuadrático: Aparece en ciclos doblemente anidados y si n se
duplica el tiempo de ejecución puede aumentar hasta 4 veces.
O (n3) Orden cúbico: Se da en ciclos de triple anidación si n se duplica el
tiempo de ejecución se multiplica hasta 8 veces.
O (n a) Orden Polinomial: se encuentran con dificultad a problemas de tamaño
creciente y se encuentran en el límite de lo tratado. La complejidad es bastante
mala.
O (an) Orden Exponencial: Estos algoritmos no suelen ser muy útiles en la
práctica por el elevadísimo tiempo de ejecución. Se dan en programas
recursivos que contienen dos o más llamadas internas.
Complejidad--------------------------------------------------------------------------------------------
Dado un algoritmo de debe conocer su complejidad Temporal por medio de alguna
de las dos formas de medirla, recomendándose siempre el Análisis del Algoritmo.
b) Variables dinámicas
d) Indicadores de archivos