SlideShare una empresa de Scribd logo
Algoritmos
Sherlyn del Rosario Pérez
Reyes.
Grupo 5030
¿Qué es un algoritmo?
En el contexto matemático, los algoritmos son una serie de normas o
leyes específicas que hace posible la ejecución de actividades,
cumpliendo una serie de pasos continuos que no le originen dudas a
la persona que realice dicha actividad. Los algoritmos se pueden
expresar de diversas formas: lenguaje natural, lenguaje de
programación, pseudocódigo y diagramas de flujo.
Clase de algoritmos
Según el sistema de signos: cualitativos y cuantitativos. Los algoritmos cualitativos son
aquellos que se realizan por medio de las palabras, lo que quiere decir que las órdenes
vienen dadas en forma verbal. Por ejemplo una receta de cocina. Por su parte los algoritmos
cuantitativos son aquellos que se realizan por medio de cálculos matemáticos. Por ejemplo,
si se desea saber cuál es la raíz cuadrada de un número, se pueden aplicar algoritmos.
Según su función: de ordenamiento, de búsqueda y de encaminamiento. Los algoritmos de
ordenamiento son aquellos que llevan en orden los elementos que ingresan, dependiendo del
orden numérico o léxico. Los algoritmos de búsqueda tratan de encontrar dentro de la lista
que ingresa, algún elemento en especial que cumpla con las órdenes dadas. Y por último, los
algoritmos de encaminamiento, éstos deciden la manera de cómo se tendrá que transmitir la
información que llega y cómo deben seguir los pasos establecidos.
Fuerza bruta: los algoritmos de fuerza bruta resuelven el problema con la estrategia más obvia de solución, que no
siempre es la mejor según el número de operaciones que se requiere.
Divide and conquer (divide y reinarás): esta metodología divide las instancias del problema a resolver en instancias cada vez
más pequeñas, usualmente en forma recursiva, hasta llegar a una instancia en que el problema es resoluble en forma
trivial o con unas pocas instrucciones. Los algoritmos de búsqueda binaria son un ejemplo de la metodología divide
and conquer.
Programación dinámica: cuando un problema presenta una subestructura óptima –o sea, cuando la solución óptima de un
problema se obtiene a partir de las soluciones óptimas de sus subproblemas–, se encuentra la solución resolviendo
primero los subproblemas más sencillos y luego utilizando esas subsoluciones para resolver problemas
incrementalmente difíciles. Por ejemplo, si se tiene una serie de puntos (definidos por coordenadas x, y) que delimitan
una región, y se necesita saber si otro punto se encuentra dentro o fuera de esa región, una forma de resolver el
problema consiste en comenzar formando cuadrados con puntos contiguos, para luego formar figuras cada vez más
grandes y, por cada figura, determinar si el punto está dentro o fuera de ella. En cada paso se aprovecha la
información de los pasos anteriores, hasta que, al completar todos los puntos, se obtiene el resultado del problema.
Programación lineal: para resolver un problema utilizando programación lineal, se plantea una serie de inecuaciones y luego
se busca maximizar (o minimizar) las variables, respetando las inecuaciones. Muchos problemas pueden plantearse en
la forma de un conjunto de inecuaciones, para luego resolverlos utilizando un algoritmo genérico, como por ejemplo, el
denominado método Simplex (en la sección de Servicios al lector se detallan sitios donde obtener más información
sobre este método).
Búsqueda y enumeración: muchos problemas (como por ejemplo, un juego de ajedrez) pueden modelarse con grafos y
resolverse a partir de un algoritmo de exploración del grafo. Tal algoritmo especificará las reglas para moverse en el
grafo en busca de la solución al problema. Esta categoría incluye también algoritmos de backtracking (vuelta atrás), los
cuales van ensayando distintos caminos con posibles soluciones
y vuelven atrás cuando no las encuentran. Por ejemplo, para encontrar la salida en un laberinto, cada vez que se llega al
final de un camino se vuelve atrás hasta la última bifurcación, para probar con las distintas alternativas de esa
bifurcación.
Algoritmos heurísticos: el propósito de estos algoritmos no es necesariamente encontrar una solución final al problema, sino
encontrar una solución aproximada cuando el tiempo o los recursos necesarios para encontrar la solución perfecta son
excesivos. Muchos sistemas antivirus utilizan métodos heurísticos para detectar conductas de programas que podrían
estar actuando en forma maliciosa.
Algoritmos voraces: seleccionan la opción de solución (solución local) que tenga un costo menor en la etapa de solución en
la que se encuentran, sin considerar si esa opción es parte de una solución óptima para el problema completo
(solución global).
Simbología
Para poder elaborar un algoritmo, es necesario recordar las siguientes observaciones:
1. El algoritmo debe escribirse como una expresión en algún lenguaje:
♦       Descripción narrada
♦       Notación matemática
♦       Pseudocódigo
♦       Diagramas de flujo
♦       Lenguaje de computadora.
2. Exactamente cada pregunta del problema debe ser contestada por la ejecución del algoritmo.
3. Cualquiera que sean los valores de las entradas, la ejecución terminará después de algún número finito de
pasos.
Por ello, para que una computadora pueda resolver un problema concreto, el usuario
y no la computadora, debe diseñar un método adecuado para la solución. La computadora
Simbología
Para poder elaborar un algoritmo, es necesario recordar las siguientes observaciones:
1. El algoritmo debe escribirse como una expresión en algún lenguaje:
♦       Descripción narrada
♦       Notación matemática
♦       Pseudocódigo
♦       Diagramas de flujo
♦       Lenguaje de computadora.
2. Exactamente cada pregunta del problema debe ser contestada por la ejecución del algoritmo.
3. Cualquiera que sean los valores de las entradas, la ejecución terminará después de algún número finito de
pasos.
Por ello, para que una computadora pueda resolver un problema concreto, el usuario
y no la computadora, debe diseñar un método adecuado para la solución. La computadora

Más contenido relacionado

PPTX
ALGORITMOS
PPTX
Elaboracion de algoritmos
PPTX
Algoritmo
DOCX
preguntas de algoritmos
PPTX
Tutorial: Crear un algoritmo
PDF
Realización de un algoritmo
PPT
Introduccion a los algoritmos parte 1
PPTX
Introduccion a Algoritmos
ALGORITMOS
Elaboracion de algoritmos
Algoritmo
preguntas de algoritmos
Tutorial: Crear un algoritmo
Realización de un algoritmo
Introduccion a los algoritmos parte 1
Introduccion a Algoritmos

La actualidad más candente (20)

PPTX
Algoritmo
PPTX
Tutorial Definición de algoritmo
PPTX
Logica algoritmos
PPTX
Algoritmos
PPTX
Diseño y elaboración de algoritmos
PPTX
Algoritmos y Logica
PPTX
PDF
Introduccion Analisis Algoritmos
PPTX
Logica de programacion de algoritmos
PDF
Introducción a los algoritmos y programación 1
PPT
Algoritmos y diagramas de flujo
PPTX
algoritmo
PPTX
Algoritmos computacionales conceptos básicos
PPTX
PPT
Algoritmos
PPTX
Diapositivas algoritmos
PPTX
Tipos de algoritmos
PDF
Analisis y diseño algoritmos
PDF
Lógica de programación y algoritmos
Algoritmo
Tutorial Definición de algoritmo
Logica algoritmos
Algoritmos
Diseño y elaboración de algoritmos
Algoritmos y Logica
Introduccion Analisis Algoritmos
Logica de programacion de algoritmos
Introducción a los algoritmos y programación 1
Algoritmos y diagramas de flujo
algoritmo
Algoritmos computacionales conceptos básicos
Algoritmos
Diapositivas algoritmos
Tipos de algoritmos
Analisis y diseño algoritmos
Lógica de programación y algoritmos
Publicidad

Similar a Algoritmos (20)

DOCX
Algoritmos
PPT
Introducción a la Informática - Los Algoritmos
PPT
Técnicas de Diseño Detallado.
DOCX
Unidad 1
PPT
Algoritmica terminado
PPTX
algoritmos y fundamentos de programacion
DOCX
PPT
Algoritmos
DOCX
Unidad 1
DOCX
Unidad 1
DOCX
Unidad 1
DOCX
PDF
Algoritmos libro 6
PDF
Tema1 faa 16_17
DOC
Algoritmo
DOC
Algoritmo
Algoritmos
Introducción a la Informática - Los Algoritmos
Técnicas de Diseño Detallado.
Unidad 1
Algoritmica terminado
algoritmos y fundamentos de programacion
Algoritmos
Unidad 1
Unidad 1
Unidad 1
Algoritmos libro 6
Tema1 faa 16_17
Algoritmo
Algoritmo
Publicidad

Más de sherlynsyta (7)

PPT
Programacion
PPT
PPT
Sofware
PPT
Ambiente gráfico
PPT
Combinaciones
PPT
Mac vs pc
PPT
Robotica
Programacion
Sofware
Ambiente gráfico
Combinaciones
Mac vs pc
Robotica

Último (20)

PDF
CyberOps Associate - Cisco Networking Academy
PPTX
Presentación de Redes de Datos modelo osi
PPT
Que son las redes de computadores y sus partes
PDF
clase auditoria informatica 2025.........
PDF
Maste clas de estructura metálica y arquitectura
PPTX
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PDF
Diapositiva proyecto de vida, materia catedra
PPT
introduccion a las_web en el 2025_mejoras.ppt
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PPT
El-Gobierno-Electrónico-En-El-Estado-Bolivia
PDF
SAP Transportation Management para LSP, TM140 Col18
PPTX
Sesion 1 de microsoft power point - Clase 1
PDF
Plantilla para Diseño de Narrativas Transmedia.pdf
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PDF
taller de informática - LEY DE OHM
PDF
Influencia-del-uso-de-redes-sociales.pdf
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PDF
Estrategia de apoyo tecnología miguel angel solis
CyberOps Associate - Cisco Networking Academy
Presentación de Redes de Datos modelo osi
Que son las redes de computadores y sus partes
clase auditoria informatica 2025.........
Maste clas de estructura metálica y arquitectura
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
Diapositiva proyecto de vida, materia catedra
introduccion a las_web en el 2025_mejoras.ppt
Zarate Quispe Alex aldayir aplicaciones de internet .docx
El-Gobierno-Electrónico-En-El-Estado-Bolivia
SAP Transportation Management para LSP, TM140 Col18
Sesion 1 de microsoft power point - Clase 1
Plantilla para Diseño de Narrativas Transmedia.pdf
REDES INFORMATICAS REDES INFORMATICAS.pptx
taller de informática - LEY DE OHM
Influencia-del-uso-de-redes-sociales.pdf
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
Estrategia de apoyo tecnología miguel angel solis

Algoritmos

  • 1. Algoritmos Sherlyn del Rosario Pérez Reyes. Grupo 5030
  • 2. ¿Qué es un algoritmo? En el contexto matemático, los algoritmos son una serie de normas o leyes específicas que hace posible la ejecución de actividades, cumpliendo una serie de pasos continuos que no le originen dudas a la persona que realice dicha actividad. Los algoritmos se pueden expresar de diversas formas: lenguaje natural, lenguaje de programación, pseudocódigo y diagramas de flujo.
  • 3. Clase de algoritmos Según el sistema de signos: cualitativos y cuantitativos. Los algoritmos cualitativos son aquellos que se realizan por medio de las palabras, lo que quiere decir que las órdenes vienen dadas en forma verbal. Por ejemplo una receta de cocina. Por su parte los algoritmos cuantitativos son aquellos que se realizan por medio de cálculos matemáticos. Por ejemplo, si se desea saber cuál es la raíz cuadrada de un número, se pueden aplicar algoritmos. Según su función: de ordenamiento, de búsqueda y de encaminamiento. Los algoritmos de ordenamiento son aquellos que llevan en orden los elementos que ingresan, dependiendo del orden numérico o léxico. Los algoritmos de búsqueda tratan de encontrar dentro de la lista que ingresa, algún elemento en especial que cumpla con las órdenes dadas. Y por último, los algoritmos de encaminamiento, éstos deciden la manera de cómo se tendrá que transmitir la información que llega y cómo deben seguir los pasos establecidos.
  • 4. Fuerza bruta: los algoritmos de fuerza bruta resuelven el problema con la estrategia más obvia de solución, que no siempre es la mejor según el número de operaciones que se requiere. Divide and conquer (divide y reinarás): esta metodología divide las instancias del problema a resolver en instancias cada vez más pequeñas, usualmente en forma recursiva, hasta llegar a una instancia en que el problema es resoluble en forma trivial o con unas pocas instrucciones. Los algoritmos de búsqueda binaria son un ejemplo de la metodología divide and conquer. Programación dinámica: cuando un problema presenta una subestructura óptima –o sea, cuando la solución óptima de un problema se obtiene a partir de las soluciones óptimas de sus subproblemas–, se encuentra la solución resolviendo primero los subproblemas más sencillos y luego utilizando esas subsoluciones para resolver problemas incrementalmente difíciles. Por ejemplo, si se tiene una serie de puntos (definidos por coordenadas x, y) que delimitan una región, y se necesita saber si otro punto se encuentra dentro o fuera de esa región, una forma de resolver el problema consiste en comenzar formando cuadrados con puntos contiguos, para luego formar figuras cada vez más grandes y, por cada figura, determinar si el punto está dentro o fuera de ella. En cada paso se aprovecha la información de los pasos anteriores, hasta que, al completar todos los puntos, se obtiene el resultado del problema. Programación lineal: para resolver un problema utilizando programación lineal, se plantea una serie de inecuaciones y luego se busca maximizar (o minimizar) las variables, respetando las inecuaciones. Muchos problemas pueden plantearse en la forma de un conjunto de inecuaciones, para luego resolverlos utilizando un algoritmo genérico, como por ejemplo, el denominado método Simplex (en la sección de Servicios al lector se detallan sitios donde obtener más información sobre este método). Búsqueda y enumeración: muchos problemas (como por ejemplo, un juego de ajedrez) pueden modelarse con grafos y resolverse a partir de un algoritmo de exploración del grafo. Tal algoritmo especificará las reglas para moverse en el grafo en busca de la solución al problema. Esta categoría incluye también algoritmos de backtracking (vuelta atrás), los cuales van ensayando distintos caminos con posibles soluciones y vuelven atrás cuando no las encuentran. Por ejemplo, para encontrar la salida en un laberinto, cada vez que se llega al final de un camino se vuelve atrás hasta la última bifurcación, para probar con las distintas alternativas de esa bifurcación. Algoritmos heurísticos: el propósito de estos algoritmos no es necesariamente encontrar una solución final al problema, sino encontrar una solución aproximada cuando el tiempo o los recursos necesarios para encontrar la solución perfecta son excesivos. Muchos sistemas antivirus utilizan métodos heurísticos para detectar conductas de programas que podrían estar actuando en forma maliciosa. Algoritmos voraces: seleccionan la opción de solución (solución local) que tenga un costo menor en la etapa de solución en la que se encuentran, sin considerar si esa opción es parte de una solución óptima para el problema completo (solución global).
  • 5. Simbología Para poder elaborar un algoritmo, es necesario recordar las siguientes observaciones: 1. El algoritmo debe escribirse como una expresión en algún lenguaje: ♦       Descripción narrada ♦       Notación matemática ♦       Pseudocódigo ♦       Diagramas de flujo ♦       Lenguaje de computadora. 2. Exactamente cada pregunta del problema debe ser contestada por la ejecución del algoritmo. 3. Cualquiera que sean los valores de las entradas, la ejecución terminará después de algún número finito de pasos. Por ello, para que una computadora pueda resolver un problema concreto, el usuario y no la computadora, debe diseñar un método adecuado para la solución. La computadora
  • 6. Simbología Para poder elaborar un algoritmo, es necesario recordar las siguientes observaciones: 1. El algoritmo debe escribirse como una expresión en algún lenguaje: ♦       Descripción narrada ♦       Notación matemática ♦       Pseudocódigo ♦       Diagramas de flujo ♦       Lenguaje de computadora. 2. Exactamente cada pregunta del problema debe ser contestada por la ejecución del algoritmo. 3. Cualquiera que sean los valores de las entradas, la ejecución terminará después de algún número finito de pasos. Por ello, para que una computadora pueda resolver un problema concreto, el usuario y no la computadora, debe diseñar un método adecuado para la solución. La computadora