0% encontró este documento útil (0 votos)
22 vistas2 páginas

Definición y características de algoritmos

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
22 vistas2 páginas

Definición y características de algoritmos

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Nombre: Juan Carlos Copa Cruz UNIVERSIDAD AUTONOMA

Docente: Ing. Juan J. Callamullo M. "TOMÁS FRÍAS"


Carrera: Ing. Mecánica Asignatura: INFORMATICA
Fecha:15/04/2024 Práctica N°: 1 Sigla: MAT 204

Tarea #1
1.¿ QUES ES UN ALGORITMO?:
En matemáticas, lógica, ciencias de la computación y disciplinas relacionadas, un algoritmo es un
conjunto de instrucciones o reglas definidas y no-ambiguas, ordenadas y finitas que permite, típicamente,
solucionar un problema, realizar un cómputo, procesar datos y llevar a cabo otras tareas o actividades.1
Dado 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.
Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo,
diagramas de flujo y lenguajes de programación entre otros. Las descripciones en lenguaje natural tienden
a ser ambiguas y extensas. El usar pseudocódigo y diagramas de flujo evita muchas ambigüedades del
lenguaje natural. Dichas expresiones son formas más estructuradas para representar algoritmos; no
obstante, se mantienen independientes de un lenguaje de programación específico.

La descripción de un algoritmo suele hacerse en tres niveles:

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.
Descripción formal. Se usa un pseudocódigo para describir la secuencia de pasos que encuentran la
solución.
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.
2.- ¿CARACTERÍSTICAS QUE DEBEN CUMPLIR LOS ALGORITMOS? :
Un algoritmo informático presenta una serie de características comunes, estás son:

➢ Precisión: Cada paso del algoritmo debe estar definido claramente y sin ambigüedades.
➢ Finitud: El algoritmo debe tener un número finito de pasos. Debe eventualmente detenerse después
de ejecutar un número finito de operaciones.
➢ Determinismo: Para una entrada dada, un algoritmo debe producir el mismo resultado cada vez que
se ejecute.
➢ Eficacia: Debe ser capaz de resolver el problema para el que fue diseñado en un tiempo razonable y
con recursos adecuados.
➢ Generalidad: Debe ser aplicable a una amplia gama de casos, no solo a uno específico.
➢ Independencia: Los algoritmos deben ser independientes del lenguaje de programación o la
plataforma en la que se implementan.
➢ Legibilidad: Debe ser comprensible para los humanos, lo que facilita su comprensión y
mantenimiento.
➢ Finitos: Contienen un número específico de pasos.
➢ Concretos: Ofrecen una solución determinada para la situación o problema planteado.
➢ Definidos: El mismo algoritmo debe dar el mismo resultado al recibir la misma entrada.
Estas características garantizan que los algoritmos sean confiables, eficientes y fácilmente comprensibles
para los programadores y usuarios.
3. ¿HERRAMIENTAS DE UN ALGORITMO?:

Las herramientas utilizadas en el diseño y análisis de algoritmos son variadas y dependen del contexto y
del problema específico que se esté abordando. Algunas de las herramientas comunes incluyen:

➢ Pseudocódigo: Es una descripción informal de un algoritmo que utiliza una combinación de


lenguaje natural y estructuras de control de programación. Ayuda a comprender la lógica del
algoritmo antes de implementarlo en un lenguaje de programación específico.
➢ Diagramas de flujo: Representan visualmente el flujo de control de un algoritmo mediante símbolos
gráficos que representan diferentes pasos y decisiones.
➢ Análisis de complejidad*: Evalúa la eficiencia de un algoritmo en términos de tiempo y espacio
requeridos para resolver un problema en función del tamaño de la entrada.

➢ Notación Big O: Es una notación utilizada para describir el peor caso de tiempo o espacio de un
algoritmo en función del tamaño de la entrada. Ayuda a comparar la eficiencia de diferentes
algoritmos.

➢ Recursión: Algunos problemas se pueden resolver de manera elegante utilizando la técnica de


recursión, donde una función se llama a sí misma para resolver instancias más pequeñas del mismo
problema.

➢ Estructuras de datos: Son herramientas fundamentales para el almacenamiento y manipulación de


datos en algoritmos. Ejemplos incluyen listas, arrays, árboles, grafos, entre otros.

➢ Optimización y técnicas heurísticas: En algunos casos, es posible mejorar la eficiencia de un


algoritmo mediante técnicas de optimización o heurísticas que aprovechan características específicas
del problema.

Estas son solo algunas de las herramientas comunes utilizadas en el diseño, análisis e implementación de
algoritmos, pero hay muchas otras dependiendo del contexto y los requisitos específicos del problema.

También podría gustarte