ÍNDICE INTRODUCCIÓN...13

Documentos relacionados
Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

C a l ses P P y y NP C a l se P C a l se N P N P [No N n o -De D te t rmin i i n s i ti t c i Polynomial-tim i e]

: Algorítmica y Estructura de Datos I

Planificaciones Algoritmos y Programación II. Docente responsable: CALVO PATRICIA MABEL. 1 de 6

Contenido. Prólogo... Capítulo 1. Algoritmos y estructuras de datos Introducción... 24

Fundamentos de Programación Visual Basic

Índice general. Capítulo 1 Conceptos básicos. Capítulo 2 Controles básicos I. Pág. N. 1

Planificaciones Algoritmos y Programación I. Docente responsable: AZCURRA DIEGO ANDRES. 1 de 5

1. Conceptos básicos sobre el problema en cuestión y cuestiones afines. 2. Formulación de los correspondientes algoritmos y su pseudocódigo.

UNIVERSIDAD NACIONAL EXPERIMENTAL DE GUAYANA VICERRECTORADO ACADÉMICO COORDINACION DE PRE-GRADO PROYECTO DE CARRERA DE INGENIERIA INDUSTRIAL

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

DESCRIPCIÓN ESPECÍFICA NÚCLEO: Núcleo Sector Comercio y Servicios.

Algoritmos y Estructuras de Datos Curso 06/07. Ejercicios

Ficha de Aprendizaje N 13

Introducción al tipo Vector Cómo guardar una colección de datos conceptualmente relacionados? - almacenar los 100 primeros números primos, - al

Capítulo 6. Relaciones. Continuar

INDICE 1. Operación del Computador 2. Sistemas Numéricos 3. Álgebra de Boole y Circuitos Lógicos

3. Técnicas de diseño de algoritmos

Aprender a desarrollar con JavaScript

Guía práctica de estudio 05: Diagramas de flujo

Reconocímíentes y Agradecimientos 5 Indice 6 Prólogo 11

CI-6675 Algoritmos y Estructuras Optimizadas para Videojuegos

Operadores y Expresiones

DES: Programa(s) Educativo(s): Tipo de materia: Clave de la materia: Semestre: Área en plan de estudios:

2. Sudoku tablas de multiplicar (multiplication tables) 1,2,5,10 6 )A!A X = 12 4!A X = !A X = )A!A X = 70 7!A X = 35 9!A X = 18 6 )A!A X

PLAN DE MATERIAS ACADEMUSOFT 3.2

Ejemplo: El problema de la mochila. Algoritmos golosos. Algoritmos y Estructuras de Datos III. Segundo cuatrimestre 2013

Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo

CAPITULO 1: PERSPECTIVE GENERAL DE LA

Capítulo 7 OPERADORES Y EXPRESIONES. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"

PROGRAMACIÓN UNIDADES

Apuntadores (Punteros)

INDICE 1. Introducción a los Modelos y a la Ciencia de la Administración 2. Introducción a los Modelos de Programación Lineal

ESCUELA SUPERIOR POLITECNICA DEL LITORAL PROGRAMA DE ESTUDIOS

INDICE. XVII Prólogo a la edición en español. XXI 1. Calculo proporcional 1.1. Argumentos y proporciones lógicas

Índice PRESENTACIÓN PRIMERA PARTE. CUESTIONES BÁSICAS CAPÍTULO I. INTRODUCCIÓN... 21

ESTRUCTURA DE DATOS: ARREGLOS

UNIDAD 1: NÚMEROS NATURALES OBJETIVOS

FUNDAMENTOS DE PROGRAMACIÓN C#

Sistemas de ecuaciones lineales

Exterior del algoritmo. Entorno. Usuario. Procesador. Escribir. v1 v2 v3. Leer. <acción> {; <acción>}

Desarrollo de aplicaciones con JAVA, JCreator, JDeveloper NetBeans

Tema 2. Recursividad. Fundamentos de Programación II. Luís Rodríguez Baena

La eficiencia de los programas

TEMARIOS PRUEBAS SEMESTRALES 2015 PRIMER SEMESTRE DEPARTAMENTO DE MATEMÁTICA

Curso AVANZADO DE EXCEL 2013

UNIVERSIDAD AUTÓNOMA DE YUCATÁN FACULTAD DE MATEMÁTICAS

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE CIENCIAS Y SISTEMAS

Algoritmos y Estructuras de Datos

CONTENIDOS MÍNIMOS SEPTIEMBRE. DEPARTAMENTO DE MATEMÁTICAS

Universidad Autónoma de Sinaloa

4. Operadores Operador asignación

PROGRAMA DE RECUPERACIÓN PEDAGÓGICA

CENTRO UNIVERSITARIO MONTEJO A.C. SECUNDARIA Temario Matemáticas 1

Algoritmos y solución de problemas. Fundamentos de Programación Otoño 2008 Mtro. Luis Eduardo Pérez Bernal

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION

DESCRIPCIÓN ESPECÍFICA

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

CONTENIDOS EXÁMEN DE ADMISIÓN MATEMÁTICA SEGUNDO BÁSICO 2017

Tema 2 Introducción a la Programación en C.

Programación en java. Estructuras algorítmicas

Tablas de contenidos Matemática PDN segundo semestre 2016

El proyecto realizado consiste en un resolutor de sudokus mediante CSP.

Lógica proposicional. Ivan Olmos Pineda

PROGRAMA DE MATEMATICAS DISCRETAS

ANEXO 2: REPRESENTACION DE LA INFORMACION EN LOS COMPUTADORES

Programación PHP. orientada a formularios DISEÑOS CURRICULARES CON ENFOQUE POR COMPETENCIAS LABORALES

Notación Asintótica 2

Computación II. Introducción a Visual Basic

TEORÍA DE GRAFOS Ingeniería de Sistemas

Capítulo 1: Fundamentos: Lógica y Demostraciones Clase 3: Relaciones, Funciones, y Notación Asintótica

ALGORITMOS, ESTRUCTURAS Y PROGRAMACION

CONTENIDOS MÍNIMOS 1ºESO. -Realización de las cuatro operaciones (suma, resta, multiplicación y división) mediante los algoritmos tradicionales.

ARREGLOS DEFINICION GENERAL DE ARREGLO

Llamamos potencia a todo producto de factores iguales. Por ejemplo: 3 4 =

Nombre de la asignatura: Algoritmos y Lenguajes de programación.

UNIVERSIDAD DE SAN CARLOS DE GUATEMALA FACULTAD DE INGENIERIA ESCUELA DE MECÁNICA INDUSTRIAL PROGRAMA DEL CURSO DE CONTROL DE LA PRODUCCIÓN

CURSO DE FORMULACION Y PREPARACION DE PROGRAMAS DE INVERSION PUBLICA 2015

INTRODUCCIÓN A LA PROGRAMACIÓN EN FORTRAN. Métodos Numéricos Carlos Zotelo

UNIVERSIDAD LIBRE PROGRAMAS ANALÍTICOS SECCIONAL: PEREIRA FACULTAD: INGENIERIAS. PROGRAMA ACADÉMICO: Ingeniería de Sistemas

Estándares de Contenido y Desempeño, Estándares de Ejecución y Niveles de Logro Marcado* MATEMÁTICA

INDICE Parte 1. Visual Basic Capitulo 1. Qué es Visual Basic? Capitulo 22. Mi Primera Aplicación Capitulo 3. Elementos del lenguaje

Principios de Computadoras II

2. EXPRESIONES 3. OPERADORES Y OPERANDOS 4. INDENTIFICADORES COMO LOCALIDADES DE MEMORIA

<tipo> Tipo de dato de los elementos del vector

PROGRAMA DE CURSO DE FORMACIÓN PROFESIONAL OCUPACIONAL

Se entiende por sistema numérico a los símbolos y al conjunto de reglas que se aplican sobre ellos para realizar la representación de una cantidad.

Expresiones Aritméticas. Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz

MATEMÁTICAS PARA LA COMPUTACIÓN CAPÍTULO 1. SISTEMAS NUMÉRICOS

Transcripción:

ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. LENGUAJE ALGORÍTMICO...15 1.1 DEFINICIÓN DE ALGORITMO...16 1.2 LA ROTACIÓN DE UNA LISTA DE NÚMEROS NATURALES...20 1.3 CUESTIONES...23 1.3.1 Dos comerciales en el restaurante...23 1.3.2 Invertir una lista...23 1.3.3 El palíndromo...24 1.4 RESPUESTAS A LAS CUESTIONES PLANTEADAS...24 1.4.1 Dos comerciales en el restaurante...24 1.4.2 Invertir una lista...25 1.4.3 El palíndromo...25 CAPÍTULO 2. COMPLEJIDAD ALGORÍTMICA...27 2.1 ESTIMACIÓN DE LOS TIEMPOS DE EJECUCIÓN DEL ALGORITMO...28 2.2 ALGORITMOS ITERATIVOS...30 2.3 ESTRUCTURAS DE DATOS...31 2.4 NOTACIÓN ASINTÓTICA...33 2.4.1 Recurrencias homogéneas...34 2.4.2 Recurrencias no homogéneas...35 2.4.3 Ejemplo de aplicación...36 2.4.4 Divide y Vencerás...37 2.5 CUESTIONES...38 2.6 RESPUESTAS A LAS CUESTIONES PLANTEADAS...40 CAPÍTULO 3. DIVIDE Y VENCERÁS...43 3.1 CONSIDERACIONES GENERALES...44

8 DISEÑO DE PROGRAMAS RA-MA 3.2 ROTAR UNA IMAGEN...45 3.3 BÚSQUEDA BINARIA...48 3.4 EL PROBLEMA DE LA ORDENACIÓN...49 3.4.1 La ordenación por mezcla...51 3.4.2 Ordenación rápida...52 3.4.2.1 LA BANDERA HOLANDESA...53 3.5 CUESTIONES...56 3.5.1 K-ésimo menor elemento de un vector...56 3.5.2 Pseudomediana...56 3.5.3 Rotación de una imagen...56 3.5.4 Rotación de un vector...56 3.5.5 Intercalación de dos vectores ordenados...57 3.5.6 Multiplicación de naturales grandes...57 3.5.7 Suma de la subsecuencia máxima de un vector de naturales...58 3.5.8 Moda de un vector...58 3.5.9 Búsqueda de un elemento en un vector ordenado...58 3.5.10 Elemento mayoritario de un vector...58 3.5.11 Algoritmo Shannon-Fano...58 3.5.12 Mínimo y máximo de un vector no ordenado...59 3.6 RESPUESTAS A LAS CUESTIONES PLANTEADAS...59 3.6.1 K-ésimo menor elemento de un vector...59 3.6.2 Pseudomediana...60 3.6.3 Rotación de una imagen...62 3.6.4 Rotación de un vector...63 3.6.5 Intercalación de dos vectores ordenados...64 3.6.6 Multiplicación de naturales grandes...65 3.6.7 Suma de la subsecuencia máxima de un vector de naturales...67 3.6.8 Moda de un vector...69 3.6.9 Búsqueda de un elemento en un vector ordenado...72 3.6.10 Elemento mayoritario de un vector...73 3.6.11 Algoritmo de Shannon-Fano...75 3.6.12 Mínimo y máximo de un vector no ordenado...76 CAPÍTULO 4. PROGRAMACIÓN DINÁMICA...77 4.1 PLANTEAMIENTO DEL PROBLEMA DE CONTROL ÓPTIMO...77 4.2 PROPIEDAD DE CAUSALIDAD...78 4.3 CONTROL ÓPTIMO CON PROGRAMACIÓN DINÁMICA...79 4.3.1 El problema de la producción con beneficio máximo...80 4.3.2 Solucionando problemas con Programación Dinámica...83 4.3.3 El cambio de monedas...86 4.4 CUESTIONES...87 4.4.1 El problema del cambio de monedas...87 4.4.2 Los litros de leche...88 4.4.3 Juego con fichas...88 4.4.4 Inversión en negocios...88

RA-MA ÍNDICE 9 4.4.5 División de una cantidad...88 4.4.6 Carga de un avión...89 4.4.7 Fabricación de automóviles...89 4.4.8 Fabricación de papel...90 4.4.9 El problema de la subsecuencia común más larga...90 4.4.10 Conversión a palíndromo...90 4.4.11 Caminos mínimos en grafos dirigidos y ponderados...91 4.4.12 El problema de la multiplicación de n matrices...91 4.4.13 Multiplicar de forma óptima n matrices...91 4.4.14 Operaciones con cadenas de caracteres...91 4.4.15 Número de árboles binarios...92 4.4.16 El problema de los dos puntos más cercanos...92 4.4.17 Número de caminos distintos...92 4.4.18 La función de Fibonacci...93 4.4.19 Número de ordenaciones con los operadores = y <...93 4.5 SOLUCIONES...94 4.5.1 El problema del cambio de monedas...94 4.5.2 Los litros de leche...95 4.5.3 Juego con fichas...96 4.5.4 Inversión en negocios...96 4.5.5 División de una cantidad...97 4.5.6 Carga de un avión...99 4.5.7 Fabricación de automóviles...99 4.5.8 Fabricación de papel...100 4.5.9 El problema de la subsecuencia común más larga...101 4.5.10 Conversión a palíndromo...103 4.5.11 Caminos mínimos en grafos dirigidos y ponderados....105 4.5.12 El problema de la multiplicación de n matrices...108 4.5.13 Multiplicar de forma óptima n matrices...112 4.5.14 Operaciones con cadenas de caracteres...113 4.5.15 Número de árboles binarios...117 4.5.16 El problema de los dos puntos más cercanos...118 4.5.17 Número de caminos distintos...119 4.5.18 La función de Fibonacci...120 4.5.19 Número de ordenaciones con los operadores = y <...121 CAPÍTULO 5. TÉCNICAS DE BACKTRACKING Y VORAZ...123 5.1 CONTROL ÓPTIMO CON BACKTRACKING...125 5.2 ALGORITMOS DE BACKTRACKING...126 5.3 DISEÑO VORAZ...127 5.4 OPTIMIZAR UNA DIETA...128 5.5 CUESTIONES...130 5.5.1 El laberinto...130 5.5.2 Todas las sumas de n cifras...131 5.5.3 El cruce de calles con semáforos...131

10 DISEÑO DE PROGRAMAS RA-MA 5.5.4 El cruce de calles con semáforos (Voraz)...133 5.5.5 Oficinas de correos...133 5.5.6 El problema del cambio de monedas (Voraz)...134 5.5.7 Árbol de recubrimiento mínimo. Algoritmo de Kruskal...134 5.5.8 Expresión lógica inconsistente...135 5.5.9 Asignación de n tareas a n agentes...135 5.5.10 El problema del viajante con prisa...136 5.5.11 Horario de clase...136 5.5.12 Paradas de autobús...136 5.5.13 Paradas de autobús Voraz...137 5.5.14 Sudoku...137 5.6 SOLUCIONES A LAS CUESTIONES PLANTEADAS...139 5.6.1 El laberinto...139 5.6.2 Todas las sumas de n cifras...140 5.6.3 El cruce de calles con semáforos...141 5.6.4 El cruce de calles con semáforos (Voraz)...142 5.6.5 Oficinas de correos...142 5.6.6 El problema del cambio de monedas (Voraz)...145 5.6.7 Árbol de recubrimiento mínimo. Algoritmo de Kruskal...145 5.6.8 Expresión lógica inconsistente...147 5.6.9 Asignación de n tareas a n agentes...149 5.6.10 Subredes interesantes...150 5.6.11 El problema del viajante con prisa...153 5.6.12 Horario de clases...154 5.6.13 Paradas de autobús Backtracking...156 5.6.14 Paradas de autobús Voraz...156 5.6.15 Sudoku...157 CAPÍTULO 6. RAMIFICACIÓN Y ACOTACIÓN...161 6.1 EL PROBLEMA DE LA ASIGNACIÓN...162 6.2 OTRAS MEJORAS...165 6.3 CUESTIONES...165 6.3.1 La asignación de n tareas a n agentes...165 6.3.2 Murallas...165 6.4 SOLUCIONES...166 6.4.1 La asignación de n tareas a n agentes...166 6.4.2 Murallas...167 CAPÍTULO 7. ALGORITMOS PROBABILISTAS...171 7.1 CLASIFICACIÓN DE LOS ALGORITMOS PROBABILISTAS...172 7.2 FUNCIONES PREVIAS...172 7.3 LISTAS CON SALTOS ORDENADA...173 7.4 ALGORITMOS DE MONTE CARLO...175 7.5 COMPROBACIÓN DE LA PRIMALIDAD...176 7.6 ALGORITMOS DE LAS VEGAS...179

RA-MA ÍNDICE 11 7.7 CUESTIONES...181 7.7.1 Verificación de un producto matricial...181 7.7.2 El problema de las 8 reinas...183 7.7.3 Seleccionar el k-ésimo elemento menor de un vector...183 7.7.4 Factorización de un número natural n...184 BIBLIOGRAFÍA BÁSICA...187 ÍNDICE ALFABÉTICO...189