Este documento resume los conceptos clave de los algoritmos. Explica que los algoritmos se dividen en tres tipos principales y que su descripción usualmente se hace en tres niveles. También describe el proceso general para analizar un problema y desarrollar un algoritmo, incluyendo la descomposición del problema en módulos y la búsqueda de soluciones parciales. Brevemente menciona algunas áreas relacionadas con los algoritmos y su origen a mediados del siglo IX.
3. Son cortos y seguros y se dividen en tres
tipos:
Tiempo secuencial
Abstracto
Exploración acotada
4. La descripción de un algoritmo
usualmente se hace en tres niveles:
1. Descripción de alto nivel
2.Descripción formal
3. Implementación
5. Análisis del problema
Primera visión del método de resolución.
Descomposición en módulos
Programación estructurada
Búsqueda de soluciones parciales.
Ensamblaje de soluciones finales.
8. ESPERO QUE ESTA PRECENTACION SEA DE
SU AGRADO Y LES AGRADESCO EL
TIEMPO PRESTADO
Notas del editor
En matemáticas, ciencias de la computación y disciplinas relacionadas, un algoritmo es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos sucesivos que no generen dudas a quien deba realizar dicha actividad. Dados un estado inicial y una entrada, siguiendo los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son el objeto de estudio de la algoritmia.
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas. Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un aparato, o las instrucciones que recibe un trabajador por parte de su patrón. Algunos ejemplos en matemáticas son el algoritmo de la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver un sistema lineal de ecuaciones.
A lo largo de la historia varios autores han tratado de definir formalmente a los algoritmos utilizando modelos matemáticos como maquinas de tú-ring entre otros. Sin embargo, estos modelos están sujetos a un tipo particular de datos como son números, símbolos o graficas mientras que, en general, los algoritmos funcionan sobre una vasta cantidad de estructurar datos. En general, la parte común en todas las definiciones se puede resumir en las siguientes tres propiedades siempre y cuando no consideremos algoritmos paralelos.
Tiempo secuencial. Un algoritmo funciona en tiempo discretizado paso a paso, definiendo así una secuencia de estados "computacionales" por cada entrada válida (la entrada son los datos que se le suministran al algoritmo antes de comenzar).
Estado abstracto. Cada estado computacional puede ser descrito formalmente utilizando una estructura de primer orden y cada algoritmo es independiente de su implementación (los algoritmos son objetos abstractos) de manera que en un algoritmo las estructuras de primer orden son invariantes bajo isomorfismo.
Exploración acotada. La transición de un estado al siguiente queda completamente determinada por una descripción fija y finita; es decir, entre cada estado y el siguiente solamente se puede tomar en cuenta una cantidad fija y limitada de términos del estado actual.
La descripción de un algoritmo usualmente se hace en tres niveles:
1. Descripción de alto nivel. Se establece el problema, se selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles.
2.Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solución.
3.Implementación. Se muestra el algoritmo expresado en un lenguaje de programación específico o algún objeto capaz de llevar a cabo instrucciones.
También es posible incluir un teorema que demuestre que el algoritmo es correcto, un análisis de complejidad o ambos.
1. Análisis del problema:Requiere la clara definición del problema donde se indique que va hacer el programa y cual ve a ser el resultado.2. Diseño del algoritmo. · Análisis de proceso implica que hace el programa. · Diseño implica como se hace o realiza la tarea (problema) solicitadoEn el diseño: · El todo es la sumatoria de las partes. · Divide el todo en varias partes.El proceso de ruptura del problema en cada etapa se llama refinamiento sucesivo.1.- Cada problema se resuelve mediante un modulo (subprograma) y tiene un solo punto de entrada y un solo punto de salida. 2.- Un programa bien diseñado consta de un programa principal (modulo de nivel mas alto) que llama a subprogramas (módulos de nivel mas bajo), que a su vez pueden llamar otros subprogramas.
Estos bienes surgieron a mediados del siglo IX por el matemático distinguido y astrónomo Mohammed Ibn Musa -aljarizm: pero podemos ver que Al yebr-mugabata es otro que desarrollo formulas para posibilitar que con un número limitado de procesos fuese posible resolver ecuaciones de primer y segundo grado.La historia del algoritmo nace por necesidad de hacer cálculos matemáticos atreves, de ella se fundamenta el paso inicial de entender acabadamente cualquier problema planteada.Pero también tengamos en cuenta que los algoritmos están en el corazón mismos de los ordenadores y que los leguajes de computación solo son un medio de expresarlos.Conforme transcurre el tiempo se crea las simbologías de los algoritmos:Se utiliza un rectángulo redondeado para el inicio y finalización de los algoritmos, los rombos son utilizados para las decisiones y los rectángulos para las acciones a tomar. Las flechas nos indican el flujo teniendo en cuenta que las decisiones no crecerán verticalmente y las decisiones por si crecerán ala derecha. Si bien estos no son los únicos símbolos.El algoritmo tiene la virtud de brindarnos a todos la oportunidad de seleccionar aquello que se considera decimos que no es poco y la capacidad contenida como ordenador del pensamiento da comienzo en el primer paso, el cual implica plantear el problema.No podemos señalar que el algoritmo no es una noción de las centrales en matemática principalmente en al área correspondiente de la matemática computacional.En la teoría de los algoritmos podemos mencionar que los algoritmos empezara hadar inicio aproximadamente a lo alargo de la historia en el siglo 19 aunque ya se tenía cierto conocimiento.En la teoría de los algoritmos a objetos no constructivos se hace necesario nombrar a esto como objetos constructivos, por lo que la teoría de la numeración prácticamente se convierte en un interesante apartado de la teoría de algoritmos.