Estructuras de Datos y Algoritmos
|
|
|
- José Ángel Tebar Herrero
- hace 9 años
- Vistas:
Transcripción
1 Estructuras de Datos y Algoritmos Tema 2. Análisis de la eficiencia Prof. Dr. P. Javier Herrera
2 Contenido Introducción a la eficiencia computacional Cálculo básico de complejidades 2
3 Una leyenda ajedrecística Mucho tiempo atrás, el espabilado visir Sissa ben Dahir inventó el juego del ajedrez para el rey Shirham de la India. El rey ofreció a Sissa la posibilidad de elegir su propia recompensa. Sissa le dijo al rey que podía recompensarle en trigo con una cantidad equivalente a la cosecha de trigo en su reino de dos años, o bien con una cantidad de trigo que se calcularía de la siguiente forma: un grano de trigo en la primera casilla de un tablero de ajedrez, mas dos granos de trigo en la segunda casilla, mas cuatro granos de trigo en la tercera casilla, y así sucesivamente, duplicando el número de granos en cada casilla, hasta llegar a la última casilla. El rey pensó que la primera posibilidad era demasiado cara mientras que la segunda, medida además en simples granos de trigo, daba la impresión de serle claramente favorable. Así que sin pensárselo dos veces pidió que trajeran un saco de trigo para hacer la cuenta sobre el tablero de ajedrez y recompensar inmediatamente al visir. 3
4 Es una buena elección? El número de granos en la primera fila resultó ser: La cantidad de granos en las dos primeras filas es: 15 i0 2 i Al llegar a la tercera fila el rey empezó a pensar que su elección no había sido acertada, pues para llenar las tres filas necesitaba 23 i0 2 i granos, que pesan alrededor de 600 kilos 4
5 Endeudado hasta las cejas En efecto, para rellenar las 64 casillas del tablero hacen falta 63 i0 i ,84*10 granos, cantidad equivalente a las cosechas mundiales actuales de 1000 años. 19 La función 2 n 1 (exponencial) representa el número de granos adeudados en función del número n de casillas a rellenar. Toma valores desmesurados aunque el número de casillas sea pequeño. El coste en tiempo de algunos algoritmos expresado en función del tamaño de los datos de entrada es también exponencial. Por ello es importante estudiar el coste de los algoritmos y ser capaces de comparar los costes de algoritmos que resuelven un mismo problema. 5
6 Motivación Entendemos por eficiencia el rendimiento de una actividad en relación con el consumo de un cierto recurso. Es diferente de la efectividad. Ejemplo para ver la importancia de que el coste del algoritmo sea pequeño: n log 10 n n n log 10 n n 2 n 3 2 n 10 1 ms 10 ms 10 ms 0,1 s 1 s 1,02 s ms 0,1 s 0,2 s 10 s 16,67 m 4, sig ms 1 s 3 s 16,67 m 11,57 d 3, sig ms 10 s 40 s 1,16 d 31,71 a 6, sig ms 1,67 m 8,33 m 115,74 d 317,1 sig 3, sig ms 16,67 m 1,67 h 31,71 a ,9 sig 3, sig Es un error pensar que basta esperar algunos años para que algoritmos tan costosos se puedan ejecutar con un coste en tiempo razonable. 6
7 Qué medimos y cómo? La eficiencia es mayor cuanto menor es la complejidad o el coste (consumo de recursos). Necesitamos determinar cómo se ha de medir el coste de un algoritmo, de forma que sea posible compararlo con otros que resuelven el mismo problema y decidir cuál de todos es el más eficiente. Una posibilidad para medir el coste de un algoritmo es contar cuántas instrucciones de cada tipo se ejecutan, multiplicar este número por el tiempo que emplea la instrucción en ejecutarse, y realizar la suma para los diferentes tipos. t a t c t i t v = tiempo de asignación = tiempo de comparación = tiempo de incremento = tiempo de acceso a un vector 7
8 Ejemplo Ordenación por selección del vector V[1..n] para i := 1 hasta n 1 hacer pmin := i ; para j = i + 1 hasta n hacer si V[j] < V[pmin] entonces pmin := j fsi fpara ; intercambiar(v[i],v[pmin]) fpara Control del primer bucle: t a + (n 1)t i + nt c Primera asignación: (n 1)t a Control del bucle interno, para cada i: t a + (n i)t i + (n i + 1)t c instrucción si, para cada i, tiempo mínimo: (n i)(2t v + t c ) tiempo máximo: (n i)(2t v + t c ) + (n i)t a Intercambiar: (n 1)(2t v + 3t a ) 8
9 Ejemplo El bucle interno en total en el caso peor, el más desfavorable, n 1 i1 t a t c n it 2t 2t t i c v a Concluimos que T mín = An 2 Bn + C T máx = A n 2 B n + C 9
10 Factores El tiempo de ejecución de un algoritmo depende en general de tres factores: 1. El tamaño de los datos de entrada. Por ejemplo: Para un vector: su longitud. Para un número natural: su valor o el número de dígitos. Para un grafo: el número de vértices y/o el número de aristas. 2. El contenido de esos datos. 3. El código generado por el compilador y el ordenador concreto utilizados. 10
11 Factores Si el tiempo que tarda un algoritmo A en procesar una entrada concreta x lo denotamos por x, definimos la complejidad de A en el caso peor como t A T A n máx t A x x de tamaño n Otra posibilidad es realizar un análisis de la eficiencia en el caso promedio. Para ello necesitamos conocer el tiempo de ejecución de cada posible ejemplar y la frecuencia con que se presenta, es decir, su distribución de probabilidades. Definimos la complejidad de un algoritmo A en el caso promedio como TM A n pxt x x de tamaño n A siendo px 0..1 la probabilidad de que la entrada sea x 11
12 Medidas asintóticas El único factor del que van a depender las funciones que representan el coste de un algoritmo es el tamaño de los datos de entrada. Por eso, trabajamos con funciones. No nos importa tanto las funciones concretas, sino la forma en la que crecen. Definición: El conjunto de las funciones del orden de f (n), denotado O(f (n)), se define como Asimismo, diremos que una función g es del orden de f (n) cuando g O(f (n)). Decimos que el conjunto O(f (n)) define un orden de complejidad. Si el tiempo de un algoritmo está descrito por una función T(n) O(f (n)) diremos que el tiempo de ejecución del algoritmo es del orden de f (n). 12
13 Propiedades 13
14 Teorema del límite 14
15 Ejemplos 15
16 Jerarquía de órdenes de complejidad 16
17 Órdenes de complejidad 17
18 Órdenes de complejidad 18
19 Órdenes de complejidad 19
20 Cotas inferiores 20
21 Teorema del límite 21
22 Orden exacto 22
23 Teorema del límite 23
24 Análisis de algoritmos 24
25 Ejemplos 25
26 Ejemplos 26
27 Ejemplos 27
28 Instrucción crítica 28
29 Ejemplo 29
30 Limitaciones prácticas 30
31 Formulas útiles para el análisis de algoritmos 31
32 Formulas útiles para el análisis de algoritmos 32
33 Ejercicio propuesto Calcular el coste (en el caso caso peor) de los algoritmos que aparecen en las páginas 8, 25, 26, 27. Realizarlo de la forma explicada en la página 7, y de la forma simplificada explicada en la página
34 Bibliografía Peña, R.; Diseño de programas. Formalismo y abstracción. Tercera edición. Prentice Hall, Capítulo 1 Martí, N., Palomino, M., Verdejo, J. A. Introducción a la computación. Colección Base Universitaria, Anaya, Capítulo 4 Martí, N., Segura, C. M., Verdejo, J. A. Especificación, derivación y análisis de algoritmos. Colección Prentice Practica, Pearson, Prentice Hall, Capítulo 3 (Estas transparencias se han realizado a partir de aquéllas desarrolladas por los profesores Alberto Verdejo y Rafael del Vado de la UCM, y basadas en la bibliografía anterior) 34
CONTENIDOS: Sucesiones aritméticas y Sucesiones geométricas Ejercicio Reto
ENCUENTRO # 43 TEMA: SUCESIONES - 1 CONTENIDOS: Sucesiones aritméticas y Sucesiones geométricas Ejercicio Reto Cuenta la leyenda que el rey Shirham, rey de la India, estaba muy deprimido por haber perdido
La eficiencia de los programas
La eficiencia de los programas Jordi Linares Pellicer EPSA-DSIC Índice General 1 Introducción... 2 2 El coste temporal y espacial de los programas... 2 2.1 El coste temporal medido en función de tiempos
Tema 3. Análisis de costes
Tema 3. Análisis de costes http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, sanchiz}@icc.uji.es Estructuras de datos y de la información
Tema 01: Fundamentos del Análisis Asintótico de Algoritmos
Tema 01: Fundamentos del Análisis Asintótico de Algoritmos Noviembre, 2003 CS0218: Algoritmos y Programación II Introducción En Ciencias de la Computación se presenta con frecuencia la situación de analizar
Estructuras de Datos y Algoritmos
Estructuras de Datos y Algoritmos Tema 5.1. Árboles. Árboles binarios y generales Prof. Dr. P. Javier Herrera Contenido 1. Introducción 2. Terminología 3. Árboles binarios 4. Árboles generales Tema 5.1.
ESTIMACIÓN DE TIEMPO Y COSTO DE PRODUCTOS SOFTWARE
Análisis y costo de algoritmos Algoritmos Un algoritmo es un conjunto de pasos claramente definidos que a partir de un cierta entrada (input) produce una determinada salida (output) Algoritmos y programas
Análisis y Diseño de Algoritmos
Análisis y Diseño de Algoritmos Notación Asintótica DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Introducción Por qué el análisis de algoritmos? Determinar tiempos de respuesta (runtime)
1. Introducción al análisis de algoritmos
1. Introducción al análisis de algoritmos 1. Introducción al concepto de algoritmia 2. Eficiencia de un algoritmo 3. Notación asintótica 4. Reglas generales Bibliografía Brassard y Bratley, 97; capítulos
Muchas de las ecuaciones de recurrencia que vamos a usar en este curso tienen la siguiente forma: ( c n =0 T (n) = a T (b n b.
El Teorema Maestro Muchas de las ecuaciones de recurrencia que vamos a usar en este curso tienen la siguiente forma: ( c n =0 T (n) = a T (b n b c)+f (n) n 1 donde a, b y c son constantes, y f (n) es una
Complejidad computacional (Análisis de Algoritmos)
Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución
Introducción al Análisis del Coste de Algoritmos
1/11 Introducción al Análisis del Coste de Algoritmos Josefina Sierra Santibáñez 7 de noviembre de 2017 2/11 Eficiencia de un Algoritmo Analizar un algoritmo significa, en el contexto de este curso, predecir
Análisis de Algoritmos
Análisis de Algoritmos Amalia Duch Barcelona, marzo de 2007 Índice 1. Costes en tiempo y en espacio 1 2. Coste en los casos mejor, promedio y peor 3 3. Notación asintótica 4 4. Coste de los algoritmos
Complejidad de los Algoritmos
Que es un Algoritmo? Complejidad de los Algoritmos Webster: cualquier método especial para resolver cierta clase de problemas. Horowitz: método preciso utilizable en una computadora para la solución de
EI MT1008 Programación II
GRADO EN INGENIERÍA INFORMÁTICA GRADO EN MATEMÁTICA COMPUTACIONAL EI1008 - MT1008 Programación II Curso 2010-2011 Departamento de Lenguajes y Sistemas Informáticos 1. Datos de la asignatura Carácter: Formación
IN34A - Optimización
IN34A - Optimización Complejidad Leonardo López H. [email protected] Primavera 2008 1 / 33 Contenidos Problemas y Procedimientos de solución Problemas de optimización v/s problemas de decisión Métodos,
Grafos. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Grafos 1 / 30
Grafos AMD Grado en Ingeniería Informática AMD Grado en Ingeniería Informática (UM) Grafos / 0 Objetivos Al finalizar este tema tendréis que: Conocer la terminología básica de la teoría de grafos. Pasar
Introducción a la Programación
Grupo H Semana 6 Pontificia Universidad Javeriana Cali 23 y 25 de Agosto de 2011 Recorderis Abstracciones Las abstracciones (funciones y procedimientos) nos permiten un manejo más simple de operaciones
Análisis y Diseño de Algoritmos
Análisis y Diseño de Algoritmos Introducción: El Rol de los Algoritmos en Computación DR. JESÚS A. GONZÁLEZ BERNAL CIENCIAS COMPUTACIONALES INAOE Temario 2 1. Introducción 2. Notación Asintótica 3. Recurrencias
1. Método general. 2. Análisis de tiempos de ejecución. 3. Ejemplos de aplicación Problema de las 8 reinas Problema de la mochila 0/1.
Backtracking. Método general. 2. Análisis de tiempos de ejecución. 3. Ejemplos de aplicación. 3.. Problema de las 8 reinas. 3.2. Problema de la mochila 0/. Método general El backtracking (método de retroceso
PROGRESIONES ARITMÉTICAS Y GEOMÉTRICAS
PROGRESIONES ARITMÉTICAS Y GEOMÉTRICAS 1. Calcula el término que ocupa el lugar 100 de una progresión aritmética cuyo primer término es igual a 4 y la diferencia es 5. 2. El décimo término de una progresión
EL ORIGEN DEL AJEDREZ
EL ORIGEN DEL AJEDREZ Daniel A. Padín Pazos EL ORIGEN DEL AJEDREZ Según se puede leer en antiquísimos documentos orientales, hace ya varios milenios reino gobernado por el rey Ladava, un poderoso aunque
Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 42
Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 42 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales
Estratégias generales de análisis y diseño de algorítmos
Estratégias generales de análisis y diseño de algorítmos comp-420 Ayudantes Hugo Eduardo Dueñas [email protected] (ordinaria) Alberto José Ramirez Valadez [email protected] (ordinaria) Mandar tareas (programas)
Tema 7: Problemas clásicos de Programación Lineal
Tema 7: Problemas clásicos de Programación Lineal 1.- Características generales de un problema de transporte y asignación Surgen con frecuencia en diferentes contextos de la vida real. Requieren un número
Ejemplo: El problema de la mochila. Algoritmos golosos. Algoritmos y Estructuras de Datos III. Segundo cuatrimestre 2013
Técnicas de diseño de algoritmos Algoritmos y Estructuras de Datos III Segundo cuatrimestre 2013 Técnicas de diseño de algoritmos Algoritmos golosos Backtracking (búsqueda con retroceso) Divide and conquer
Introducción al análisis numérico
Introducción al análisis numérico Javier Segura Universidad de Cantabria Cálculo Numérico I. Tema 1 Javier Segura (Universidad de Cantabria) Introducción al análisis numérico CNI 1 / 22 Contenidos: 1 Sistemas
Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 45
Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 45 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales
Subspacios Vectoriales
Subspacios Vectoriales AMD Grado en Ingeniería Informática AMD Grado en Ingeniería Informática (UM) Subspacios Vectoriales 1 / 25 Objetivos Al finalizar este tema tendrás que: Saber si un subconjunto es
Grafos. Suponiendo que e = [u, v]. Entonces los nodos u y v se llaman extremos de e y u y v se dice que son nodos adyacentes o vecinos.
Grafos Los grafos son estructuras que constan de vértices o nodos y de aristas o arcos que conectan los vértices entre sí. Un grafo G consiste en dos cosas: 1. Un conjunto V de elementos llamados nodos
El procesador vectorial consta de:
Medida del Rendimiento de un Bucle Vectorizado Se va a realizar un ejemplo del análisis del rendimiento de un procesador vectorial al ejecutar el código obtenido de vectorizar el conocido bucle DAXPY para
Técnicas para el Diseño de Algoritmos
Técnicas para el Diseño de Algoritmos Algoritmos Algoritmos voraces Divide y conquista Programación dinámica Backtracking Algoritmos Voraces Algoritmos Voraces Algoritmos que implementan una búsqueda miope
Algoritmo de Fleury. por. Ramón Espinosa Armenta
Algoritmo de Fleury por Ramón Espinosa Armenta El siguiente algoritmo, debido a Fleury (191), permite construir un circuito Euleriano en un multigrafo Euleriano. Algoritmo Fleury (G) Entrada. Un multigrafo
INTRODUCCIÓN Y MEDIDAS DE RENDIMIENTO MEDIDAS DE RENDIMIENTO
Todos los derechos de propiedad intelectual de esta obra pertenecen en exclusiva a la Universidad Europea de Madrid, S.L.U. Queda terminantemente prohibida la reproducción, puesta a disposición del público
Análisis de Algoritmos Problemas de grafos
Análisis de Algoritmos Problemas de grafos Dra. Elisa Schaeffer [email protected] PISIS / FIME / UANL Problemas de grafos p. 1 INDEPENDENT SET es NP-completo Necesitamos un gadget : el triángulo.
1. Algoritmo, programa y pseudocódigo. Introducción al estudio de algoritmos. Ejemplos
Introducción al estudio de algoritmos 1. Algoritmo, programa y pseudocódigo 2. Eficiencia y el principio de invarianza 3. Operaciones elementales 4. Casos mejor, peor y medio 5. Notación asintótica 6.
Este método se basa en buscar el elemento menor el vector y colocarlo en la primera
Lectura ORDENACIÓN DE ARREGLOS Con frecuencia se requiere clasificar u ordenar los elementos de un vector (arreglo unidimensional) en algún orden en particular. Por ejemplo, ordenar un conjunto de números
Lógica de programación
Universidad Nacional Autónoma de Nicaragua - León Facultad de Ciencias y Tecnología Departamento de Computación Lógica de programación Elaborado por: Lic. Luis Ernesto Díaz Beteta La característica fundamental
Estructuras de Datos y Algoritmos
Estructuras de Datos y Algoritmos Tema 4.3. Tipos de datos lineales. Listas Prof. Dr. P. Javier Herrera Contenido Listas: Conceptos generales Operaciones básicas Especificación algebraica Implementación
Tema 3: Técnicas básicas de búsqueda para la resolución de problemas
Tema 3: Técnicas básicas de búsqueda para la resolución de problemas José Luis Ruiz Reina José Antonio Alonso Franciso J. Martín Mateos Departamento de Ciencias de la Computación e Inteligencia Artificial
Acción que el procesador puede ejecutar sin necesidad de información suplementaria
TEMA 5: Algoritmos y programas Fundamentos de Informática (Ingeniería Técnica Industrial) Escuela Universitaria Politécnica Índice de contenidos 1. 2. 3. 4. Introducción. Conceptos básicos Representación
Estructura de Datos. Complejidad de Algoritmos. Algoritmo. Algoritmo. Mauricio Solar Lorna Figueroa
Estructura de Datos Complejidad de Algoritmos Mauricio Solar Lorna Figueroa 2010 1 Algoritmo Definición: Un algoritmo es un conjunto finito de instrucciones que sirven para resolver un problema si fueron
MATRICES. Jaime Garrido Oliver
MATRICES Jaime Garrido Oliver ÍNDICE DE CONTENIDOS ÍNDICE DE CONTENIDOS... 2 MATRICES... 3 1.1. INTRODUCCIÓN.... 3 2. TIPOS DE MATRICES... 4 2.1. Matriz Fila, Matriz Columna... 4 2.2. Matrices cuadradas...
Introducción. Algoritmos y Complejidad. Algoritmos y Algoritmia. Introducción. Problemas e instancias. Pablo R. Fillottrani
Introducción Introducción Pablo R. Fillottrani Depto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Algoritmos y Algoritmia Problemas e instancias Primer Cuatrimestre 2014 Algoritmos
1. Ecología. 2. Flujo de energía y materia en los. ecosistemas. 3. Biomas. 4. Recursos naturales Cadena alimentaria. 2.2.
1. Ecología 2. Flujo de energía y materia en los ecosistemas 2.1. Cadena alimentaria 2.2. Redes tróficas 2.3. Flujo de materia y energía 3. Biomas 4. Recursos naturales 4.1. Recursos hídricos 4.2. Recursos
Backtracking: Esquema General
Backtracking Idea: Técnica para recorrer sistemáticamente todas las posibles configuraciones de un espacio asociado a soluciones candidatos de un problema computacional. Se puede pensar este espacio tiene
Estructuras de Datos y Algoritmos
Estructuras de Datos y Algoritmos Práctico 2: Evaluación de Algoritmos (Finalización: 03/09) Ingeniería en Computación - Ingeniería en Informática Año 2015 Ejercicio 1: Dados los siguientes vectores, correspondientes
Introducción al análisis de algoritmos
Estructura de Datos y Algoritmos Introducción al análisis de algoritmos 1. Eficiencia en tiempo de Ejecución Cuando resolvemos un problema nos vemos frecuentemente enfrentando una elección de programas,
Complejidad amortizada
Análisis de algoritmos Complejidad amortizada Dra. Elisa Schaeffer [email protected] PISIS / FIME / UANL Complejidad amortizada p. 1 Complejidad amortizada La idea en el análisis de complejidad
Estructuras de datos Listas y árboles
Estructuras de datos Listas y árboles Dra. Elisa Schaeffer [email protected] PISIS / FIME / UANL Listas y árboles p. 1 Listas Listas son estructuras un poco más avanzadas que puros arreglos, como
Universidad Autónoma del Estado de México Facultad de Medicina
Universidad Autónoma del Estado de México Facultad de Medicina Licenciatura en Bioingeniería Médica Unidad de Aprendizaje: Algoritmos y programación básica Unidad 3: Estructuras de control de flujo en
Universidad de Valladolid. Departamento de informática. Campus de Segovia. Estructura de datos Tema 4: Ordenación. Prof. Montserrat Serrano Montero
Universidad de Valladolid Departamento de informática Campus de Segovia Estructura de datos Tema 4: Ordenación Prof. Montserrat Serrano Montero ÍNDICE Conceptos básicos Elección de un método Métodos directos
NOTACIÓN O GRANDE. El análisis de algoritmos estima el consumo de recursos de un algoritmo.
NOTACIÓN O GRANDE El análisis de algoritmos estima el consumo de recursos de un algoritmo. Esto nos permite comparar los costos relativos de dos o más algoritmos para resolver el mismo problema. El análisis
Ordenamiento (Sorting)
Ordenamiento (Sorting) El problema del ordenamiento Ordenar: arreglo[α] arreglo[α], donde α es un tipo tal que está definida la relación < α Uno de los problemas más clásicos, útiles y estudiados de la
Complejidad computacional. Algoritmos y Estructuras de Datos I. Complejidad computacional. Notación O grande
Complejidad computacional Algoritmos y Estructuras de Datos I Segundo cuatrimestre de 2014 Departamento de Computación - FCEyN - UBA Algoritmos - clase 10 Introducción a la complejidad computacional y
El número asintótico de cuadrados mágicos de primos
El número asintótico de cuadrados mágicos de primos Carlos Vinuesa del Río Instituto de Ciencias Matemáticas Congreso de Jóvenes Investigadores, RSME Sevilla, 19 de septiembre de 2013 Progresiones y cuadrados
Tema 2 Introducción a la Programación en C.
Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes
Métodos de Ordenamiento. Unidad VI: Estructura de datos
Métodos de Ordenamiento Unidad VI: Estructura de datos Concepto de ordenación La ordenación de los datos consiste en disponer o clasificar un conjunto de datos (o una estructura) en algún determinado orden
Contenido. 2 Operatoria con matrices. 3 Determinantes. 4 Matrices elementales. 1 Definición y tipos de matrices
elementales Diciembre 2010 Contenido Definición y tipos de matrices elementales 1 Definición y tipos de matrices 2 3 4 elementales 5 elementales Definición 1.1 (Matriz) Una matriz de m filas y n columnas
1º BACHILLER CIENCIAS
MATEMÁTICAS 1º BACHILLER CIENCIAS IES LOS CARDONES 2015-2016 PLAN DE RECUPERACIÓN Contenidos Mínimos BLOQUE DE APRENDIZAJE I: PROCESOS, MÉTODOS Y ACTITUDES EN MATEMÁTICAS BLOQUE DE APRENDIZAJE II: NÚMEROS
Tema 9. Recursividad
Tema 9. Recursividad http://aulavirtual.uji.es José M. Badía, Begoña Martínez, Antonio Morales y José M. Sanchiz {badia, bmartine, morales, [email protected] Estructuras de datos y de la información Universitat
APLICACIONES INFORMÁTICAS EN QUÍMICA. Problemas Tema 3.2: Manipulador Algebraico-2 Listas, matrices, vectores. Grado en Química
APLICACIONES INFORMÁTICAS EN QUÍMICA Problemas Tema 3.2: Manipulador Algebraico-2 Listas, matrices, vectores Grado en Química 1º SEMESTRE Universitat de València Facultad de Químicas Departamento de Química
RESUMEN DE ALGORITMOS PROBABILÍSTICOS
RESUMEN DE ALGORITMOS PROBABILÍSTICOS En los algoritmos probabilísticos hay ciertas decisiones que se toman al azar bajo condiciones estadísticamente estables como una distribución uniforme. Normalmente
1. GRAFOS : CONCEPTOS BASICOS
1. GRAFOS : CONCEPTOS BASICOS Sea V un conjunto finito no vacio y sea E V x V. El par (V, E) es un grafo no dirigido, donde V es un conjunto de vértices o nodos y E es un conjunto de aristas. Denotaremos
4ta. Práctica. Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta. Inteligencia Artificial Prácticas 2004/2005
4ta. Práctica Búsqueda en árbol con contrincante: MiniMax con poda Alfa-Beta Inteligencia Artificial Prácticas 2004/2005 Decisiones Perfectas en Juegos de DOS Participantes Definición de Juego Estado Inicial:
Tiempo de Ejecución. Midiendo el Tiempo de Ejecución
Tiempo de Ejecución Arturo Díaz Pérez Sección de Computación Departamento de Ingeniería Eléctrica CINVESTAV-IPN Av. Instituto Politécnico Nacional No. 2508 Col. San Pedro Zacatenco México, D. F. CP 07300
Ordenamiento de un arreglo. Algoritmos y Estructuras de Datos I. Demostración. Cota inferior de complejidad tiempo para sorting
Ordenamiento de un arreglo Algoritmos y Estructuras de Datos I Segundo cuatrimestre de 2014 Departamento de Computación - FCEyN - UBA Algoritmos - clase 12 Algoritmos de ordenamiento, segunda parte Tenemos
Algoritmos para determinar Caminos Mínimos en Grafos
Problemas de camino mínimo Algoritmos para determinar Caminos Mínimos en Grafos Algoritmos y Estructuras de Datos III DC, FCEN, UBA, C 202 Problemas de camino mínimo Dado un grafo orientado G = (V, E)
Simulación I. Investigación Operativa, Grado en Estadística y Empresa, 2011/12
Simulación I Prof. José Niño Mora Investigación Operativa, Grado en Estadística y Empresa, 2011/12 Esquema Modelos de simulación y el método de Montecarlo Ejemplo: estimación de un área Ejemplo: estimación
Tema 6. Gestión de Interbloqueo
Tema 6. Gestión de Interbloqueo Introducción (I) Protocolo de acceso a recursos compartidos: Solicitud. Utilización. Liberación. El sistema operativo suspende a los procesos cuyas solicitudes no pueden
CURIOSIDADES MATEMÁTICAS
CURIOSIDADES MATEMÁTICAS Leyenda de cómo un vasallo se convirtió el más rico del reino. LA LEYENDA. Cuenta la leyenda que un vasallo enseño a jugar al ajedrez al príncipe persa Sisso, hijo de Dahir; al
PROGRESIONES GEOMÉTRICAS
PROGRESIONES GEOMÉTRICAS. Hallar el número de términos y la razón de una progresión geométrica cuyo primer término es 4 el último 6500 y la suma de todos sus términos 784.. La razón de una progresión geométrica
Algoritmos de Ordenación
Algoritmos de Ordenación Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria [email protected] Algoritmos comunes - Ordenación Ordenación o clasificación es
Ajedrez, Granos de Arroz y Potencias de 2
Especialidad La enseñanza de las matemáticas en secundaria Grupo B: Celaya Ajedrez, Granos de Arroz y Potencias de 2 Según la tradición o la leyenda o las historias que nos cuentan, un antiguo rey de la
FRACCION GENERATRIZ. Pasar de decimal exacto a fracción
FRACCION GENERATRIZ Un número decimal exacto o periódico puede expresarse en forma de fracción, llamada fracción generatriz, de las formas que indicamos: Pasar de decimal exacto a fracción Si la fracción
Observación En algunas fuentes, estas coloraciones se denominan coloraciones admisibles; aquí, por comodidad, las denominamos coloraciones.
Coloración de grafos Hay muchos problemas, como la asignación de tareas y los problemas de almacenamiento, donde es necesario partir el conjunto de vértices (resp. aristas) de un grafo asociado de tal
ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES
ÁRBOLES CRISTIAN ALFREDO MUÑOZ ÁLVAREZ JUAN DAVID LONDOÑO CASTRO JUAN PABLO CHACÓN PEÑA EDUARDO GONZALES ÁRBOL Un árbol es un grafo no dirigido, conexo, sin ciclos (acíclico), y que no contiene aristas
Programación Dinámica
Programación Dinámica Es aplicada típicamente a problemas de optimización, donde puede haber muchas soluciones, cada una tiene un valor asociado y prentendemos obtener la solución con valor óptimo. Al
6.14 Descomposición ortogonal y proyección ortogonal
CAPÍTULO. ESPACIO EUCLÍDEO CANÓNICO IR N 282.14 Descomposición ortogonal y proyección ortogonal El resultado W W = IR n, significa que cada y IR n se puede escribir de forma única como suma de un vector
Grafos. Amalia Duch Brown Octubre de 2007
Grafos Amalia Duch Brown Octubre de 2007 Índice 1. Definiciones Básicas Intuitivamente un grafo es un conjunto de vértices unidos por un conjunto de líneas o flechas dependiendo de si el grafo es dirigido
ESTRUCTURAS DE DATOS II
ESTRUCTURAS DE DATOS II Ingeniería Técnica en Informática de Gestión Ingeniería Técnica en Informática de Sistemas CURSO 2005/06 NÚMERO DE CRÉDITOS 6,75 CURSO SEGUNDO CUATRIMESTRE 2º HORAS SEMANALES TEÓRICO-PRÁCTICAS
Introducción a las Ciencias de la Computación
Introducción a las Ciencias de la Computación Colaboratorio de Computación Avanzada (CNCA) 2015 1 / 22 Contenidos 1 Computación e Informática Caracterización Áreas relacionadas 2 Antecedentes Orígenes
PLANIFICACIÓN DE LA SESIÓN DE APRENDIZAJE. Reconocemos la potenciación
PLANIFICACIÓN DE LA SESIÓN DE APRENDIZAJE Grado: Segundo I. TÍTULO DE LA SESIÓN Duración: 2 horas pedagógicas Reconocemos la potenciación UNIDAD 7 NÚMERO DE SESIÓN 4/13 II. APRENDIZAJES ESPERADOS COMPETENCIA
Algoritmos y Estructuras de Datos III Primer cuatrimestre 2013
Algoritmos y Estructuras de Datos III Primer cuatrimestre 2013 Algoritmos y Estructuras de Datos III Primer cuatrimestre 2013 (bienvenidos!) Programa 1. Algoritmos: Definición de algoritmo. Máquina RAM.
Análisis de la Complejidad de Algoritmos
Análisis de la Complejidad de Algoritmos Gráficas estadística y minería de datos con python Miguel Cárdenas Montes Centro de Investigaciones Energéticas Medioambientales y Tecnológicas, Madrid, Spain [email protected]
1. Teoría de conjuntos
Introducción a la probabilidad Universidad de Puerto Rico ET 3041 Prof. Héctor D. Torres ponte 1. Teoría de conjuntos Definición 1.1. La colección de todos los posibles resultados de un experimento se
Práctica 2 - Ejercicio 2.8
Algoritmos y Estructura de Datos III Facultad de Ciencias Exactas y Naturales, Universidad de Buenos Aires 27 de Marzo de 2013 2.8 - Euclides 2.8. a. Escribir el algoritmo de Euclides para calcular el
TEMA IV TEORÍA DE GRAFOS
TEMA IV TEORÍA DE GRAFOS Poli Abascal Fuentes TEMA IV Teoría de grafos p. 1/? TEMA IV 4. TEORÍA DE GRAFOS 4.1 GRAFOS 4.1.1 Introducción 4.1.2 Definiciones básicas 4.1.3 Caminos y recorridos 4.1.4 Subgrafos,
Complejidad de Algoritmos
Complejidad de Algoritmos Tema 5 Introducción Un algoritmo es una secuencia de instrucciones que resuelve un problema Puede tener diferentes implementaciones Para comparar las diferentes formas (algoritmos)
