¿Qué es un algoritmo explicado para que las personas normales puedan entender y también cómo se hacen?

Un algoritmo es simplemente un conjunto de instrucciones.

Los programadores usan algoritmos para resolver problemas específicos, y los mejores se vuelven bien conocidos y bien utilizados.

Un ejemplo común de un algoritmo básico es el antiguo algoritmo babilónico utilizado para aproximar la raíz cuadrada de un número. Echemos un vistazo a este algoritmo en términos de instrucciones.

Para encontrar [math] \ sqrt {x} [/ math]:

  1. Elija un número entero aleatorio menor que [math] x [/ math], llamémoslo [math] n [/ math]
  2. Si [math] n * n [/ math] es igual a [math] x [/ math], ¡hemos terminado! De lo contrario, continúe con el paso 3
  3. Vuelva al paso 2 usando [matemáticas] (n + n / x) / 2 [/ matemáticas] como su nueva [matemáticas] n [/ matemáticas]

Y eso es. Si seguimos esas instrucciones para cualquier valor x, finalmente encontraremos un valor n que se aproxima con éxito a [math] \ sqrt {x} [/ math].

Aunque este es un ejemplo relativamente simple, existen algoritmos para realizar operaciones más avanzadas dentro de la informática. Por ejemplo, dada una lista de números, ¿cómo los organizaría para que estén en orden numérico ascendente? Bueno, abordaríamos el problema pensando en cosas en conjuntos de instrucciones.

  1. Mira el primer y segundo número.
  2. Si el primer número es mayor que el segundo número, intercambie sus lugares.
  3. Mira el segundo y tercer número.
  4. Si este segundo número es mayor que el tercer número, cambie sus lugares.
  5. Mira el enésimo y enésimo + 1 número.
  6. Si el enésimo número es mayor que el enésimo + 1 número, intercambie sus lugares. Aumentar n en 1.

Podríamos continuar con este conjunto de instrucciones hasta que terminemos de recorrer la lista de números y verificar cada vez si hemos terminado. Ahora que hemos descubierto esto lógicamente, podemos escribir esto en código. ¡Y listo, hemos creado un algoritmo (por cierto, este es un extracto del algoritmo de clasificación de burbujas)!

Esperemos que esto ayude y responda a su pregunta. ¡Buena suerte en tu viaje!

La analogía de Larry con una receta es correcta, pero voy a agregar algunos detalles. No solemos llamar algoritmo a algo, a menos que sea reutilizable en una variedad de circunstancias, mejore el rendimiento o facilite el trabajo, e implica algunos pasos no obvios.

Entonces, compararía un algoritmo más con una barra lateral en una receta donde el autor le dice cómo mejorar la calidad del plato “llevando la mezcla a temperatura ambiente antes de agregar los huevos, y primero batir ligeramente los huevos y verterlos lentamente en la masa mientras se agita “.

Por lo tanto, un algoritmo suele ser una serie de pasos utilizados por los programadores, que se basa en un concepto inteligente y que podría ser útil en situaciones similares.

Un ejemplo común es el algoritmo de clasificación de burbujas, que simplemente dice que una forma fácil (pero no necesariamente rápida) de ordenar las cosas en secuencia (es decir, un mazo de cartas) es pasar por el mazo de dos en dos, intercambiándolas si están en el orden incorrecto; y hacer esto una y otra vez hasta que ya no necesite intercambiar.