¿Por qué los algoritmos tienen tanta importancia en la programación?

Si no conoce o entiende el algoritmo para el programa que está escribiendo, entonces:

No tendrá idea si su programa realmente resuelve el problema dado.

No tendrá idea de en qué circunstancias su programa funcionará bien.

No tendrá idea de qué partes del programa son importantes y qué partes se pueden hacer a la antigua usanza.

Aquí hay una analogía: usted es un albañil y está construyendo un puente con ladrillos. Tiene una idea general de que necesita zapatas, columnas y arcos. Podrías construir algo que parezca un puente, pero no tendrías ni idea de si resistiría el viento, las olas, los camiones pesados ​​o los terremotos.

Cuando escribes programas sin un algoritmo y sin comprender las limitaciones del algoritmo, eres como ese albañil. A veces, el problema es tan simple o las consecuencias de la falla son tan pequeñas que no importa, pero generalmente el sistema es tan complicado que en realidad es bastante difícil razonar sobre la solución general a partir del comportamiento de las partes.

Probablemente hayas escuchado que hay muchas formas de ordenar. Estos son algoritmos. Los algoritmos son al menos capaces de demostrar que realmente resuelven el problema dado, y no solo empujan los números. Los algoritmos se pueden analizar, por ejemplo, para determinar cómo escala su tiempo de ejecución con el tamaño del problema.

Los algoritmos usan otros algoritmos como partes, ¡y necesita saber lo suficiente para elegir! Por ejemplo, si necesita una estructura de datos para guardar datos y recuperarlos más tarde. ¿Necesitas una matriz? ¿Una mesa hash? Una base de datos? ¿Una tienda de valor clave distribuido? ¿Importa? ¿Por qué?

No se espera que la mayoría de los programadores inventen nuevos algoritmos y los escriban para JACM, pero todos necesitamos saber lo suficiente para entender que lo que estamos codificando realmente resolverá el problema especificado y comprender el almacenamiento y el tiempo de ejecución características lo suficientemente bien como para determinar si lo que estamos haciendo es razonable.

Algoritmo

En matemáticas y ciencias de la computación, un algoritmo ( i / ˈælɡərɪðəm / al -gə-ri-dhəm ) es un conjunto de operaciones paso a paso autónomo que se debe realizar. Existen algoritmos que realizan cálculos, procesamiento de datos y razonamiento automatizado.
Un algoritmo es un método efectivo que puede expresarse dentro de una cantidad finita de espacio y tiempo [1] y en un lenguaje formal bien definido [2] para calcular una función. [3] Comenzando desde un estado inicial y una entrada inicial (perhapsempty), [4] las instrucciones describen un cálculo que, cuando se ejecuta, avanza a través de un número finito [5] de estados sucesivos bien definidos, eventualmente produciendo “salida” [6] y terminando en un estado final final La transición de un estado al siguiente no es necesariamente determinista; algunos algoritmos, conocidos como algoritmos aleatorios, incorporan entradas aleatorias. [7]

En resumen, los algoritmos son programas de computadora. Ellos son la misma cosa.

Cada vez que crea una solución a cualquier problema; cada vez que codifica una forma de pensar o un método para llegar a alguna conclusión, está utilizando algoritmos. La mayoría de las veces los programadores de computadoras crean sus propios algoritmos para el problema particular que intentan resolver, o algunas veces toman prestada una solución exitosa de alguien que ya la resolvió.

En cualquier caso, la diferencia entre un programador de computadoras y un ingeniero de software, es que un ingeniero puede explicar por qué su algoritmo funciona y cómo su algoritmo es mejor que otro.

Un programa es un algoritmo expresado en un lenguaje especial. Cada programa individual es un conjunto de instrucciones paso a paso con un principio y un fin finito que también resulta ser la definición de un algoritmo. El lenguaje de programación no importa, el algoritmo es cómo funciona su programa.

Si pregunta por qué tiene que estudiar algoritmos en la escuela, la respuesta es que está recibiendo las herramientas que utilizará para armar su programa. Un programador profesional combinará esos algoritmos básicos como componentes de un algoritmo más complejo, que es el programa final. Una vez que domine los algoritmos básicos, puede aprender cualquier idioma. Mi consejo: haz muchas preguntas y practica, practica, practica.

Primero, necesita saber qué son los algoritmos, el algoritmo es un proceso o conjunto de reglas a seguir en las operaciones de resolución de problemas de la computadora. Es una secuencia de funciones especificadas. Desempeñan un papel fundamental en la programación, forman la estructura del programa o se puede decir que son como ladrillos, varillas y cemento utilizados en la construcción de edificios, de manera similar en la programación. Son una jerarquía de instrucciones dadas a la computadora para ejecutar una salida. Es el método más efectivo que se puede expresar en un lenguaje formal para calcular la función. Cualquier actividad que realice, ya sea resolver un problema informático, escribir un código fuente o innovar nuevos programas, está utilizando algoritmos. Algunas veces los desarrolladores generan sus propios algoritmos para resolver un problema, y ​​otras veces el algoritmo usa otro algoritmo como parte para manejar la situación. En resumen, se podría decir que el algoritmo es un ingrediente clave de la receta de programación. Del mismo modo, las cotizaciones de seguros son importantes en su vida.

Si no comprende el algoritmo, se enfrentará a muchas incertidumbres como si no supiera las fortunas en las que se desempeñará el programa, o incluso resolverá su problema o no, etc., el algoritmo le indica cómo hacerlo. Si quiere ser programador, debe aprender sobre el algoritmo junto con sus principios, limitaciones y reglas. O te unes a un campo de entrenamiento, aprendes por tu cuenta o te inscribes en cualquier escuela, la línea base de programación es un algoritmo. El tiempo que adquiere experiencia en el aprendizaje de algoritmos básicos puede comprender todos los idiomas. Pero en serio, hagas lo que hagas o aprendas, piénsalo profundamente, haz preguntas con el instructor una y otra vez y solo practica, practica y practica. Muchos desarrolladores hablan sobre el tiempo de ejecución de la entrada, ya que depende del aspecto de cuán rápido es un algoritmo. El algoritmo se puede analizar en función de la escala de tiempo de ejecución con el tamaño del problema. Es posible que haya escuchado sobre la clasificación, es el mejor ejemplo de algoritmo que los programadores suelen utilizar.

Escuela Holberton

Porque programar es como construir una casa. Y como probablemente ya sepa, una casa sólida (estructuralmente segura y funcionalmente eficiente) no debe construirse sin pensar, no debe construirse sin un plan cuidadoso.

De la misma manera que un plan de construcción es vital para el proceso de construcción real, también lo son los algoritmos vitales para el proceso de programación.

En informática, la programación no es la resolución de problemas per se, sino más bien una forma de implementar algoritmos.

Los algoritmos , por otro lado, son la sangre viva de la resolución de problemas en informática. Son los planes maestros de soluciones a los problemas: planes maestros que, si se analizan y diseñan correctamente, pueden convertirse en tesoros eternos para aquellos que practican ese Arte / Ciencia especial de Solución de Problemas llamado Ingeniería de Soluciones Computatuonales.

Espero que esto ayude 🙂

Los algoritmos te dicen qué programar. Los lenguajes de programación le dicen cómo programarlo.

Sin algoritmos, todo lo que verá es “Hello World” impreso en múltiples fuentes, tamaños, colores, idiomas, etc. Sin lenguajes de programación, todo lo que tendremos serán ideas y no hay forma de expresarlas.

Entonces, creo que AMBOS son importantes. Sin embargo, dicho esto, es mejor saber más algoritmos que lenguajes de programación. En mi opinión, dependiendo de la situación, su lenguaje de programación puede ser C / Java / python; cualquiera sería suficiente, dependiendo de la entrega. Sin embargo, debe conocer tantos algoritmos como sea posible, incluidas las variaciones de esos algoritmos.

Un algoritmo te dice qué hacer. El programa simplemente traduce eso en instrucciones de la computadora. Ejemplo: está escribiendo un software para un avión que se supone que examina los datos de los sistemas de radar y determina si hay algo con lo que podría encontrarse y, de ser así, calcular una ruta de evitación segura. No solo escribes código para hacer esto. Debes tener un algoritmo que te diga CÓMO hacerlo.

Técnicamente, “algoritmo” es un término matemático más que un término informático. Los algoritmos generalmente se expresan en formas no informáticas que no especifican ningún lenguaje informático realizado. Se pueden escribir en forma bastante abstracta. De hecho, puede argumentar que los algoritmos son importantes para la informática en la medida en que son abstracciones de implementaciones específicas de hardware y software. Desafortunadamente, el término se usa a menudo para referirse a algoritmos que se han implementado en lenguajes informáticos reales o lenguajes de máquina. El proceso de implementación de algoritmos en programas es una gran parte del estudio del análisis numérico y algunas otras disciplinas.

Los algoritmos son para programar como una receta para cocinar. Un algoritmo es generalmente una forma o ciertos pasos a seguir para resolver un problema determinado (no limitado a la programación. Seguir un algoritmo conocido que resuelva un problema determinado es esencial, de lo contrario reinventará la rueda

Esta es una respuesta relativamente corta. Puede leer un montón de información que dice que no necesita programación algorítmica. Hay programación funcional y estructural también. En su mayoría dependen de algoritmos (o ecuaciones) para hacer su trabajo, pero son fundamentalmente diferentes en la aplicación.

“Un algoritmo” es “un proceso o conjunto de reglas a seguir en las operaciones de resolución de problemas”, que es básicamente lo que es la programación: un conjunto de reglas que la computadora debe seguir para resolver un problema en particular (como ejecutar el sitio web de Quora) .

Un algoritmo establece una ruta para el programador.
Solo hay que seguir esa ruta para llegar al destino 🙂

Sin ella, el programador podría terminar vagando sin rumbo 😛

Algoritmo es el arte de hablar con sentido en cualquier idioma. Algunas personas lo hacen bien, otras no. Un algoritmo es una serie de actos lógicamente bien seleccionados ejecutados secuencialmente dentro de las reglas del juego. Es muy posible que conozcas las reglas del juego, pero … El hecho de que hayas matado a Jesse James no te convierte en Jesse James.