¿Cuál es la mejor manera de comenzar a aprender el diseño de algoritmos si no has tomado un curso de informática en la escuela?

Sé que esto sonará extraño, pero audita una clase de diseño de algoritmos. Lea también CLRS y otros libros de diseño de algoritmos. Simplemente busque en su vida diaria cosas que pueden ser algoritmos o no, y decida si lo son. Aquí va un buen comienzo para usted, ¿son las instrucciones en la parte posterior de su botella de champú un algoritmo o no? ¿Por qué o por qué no?

También debe escuchar e intentar ocasionalmente meter la cabeza en debates sobre algoritmos aquí en Quora. Aquí hay algunos buenos para comenzar (están un poco avanzados pero sin duda lo harán pensar):

Algoritmos: ¿Debe un algoritmo completarse en una cantidad finita de tiempo y recursos para ser considerado un algoritmo en lugar de un proceso? (resumen los expertos no pueden estar de acuerdo)

Si la definición de “algoritmo” se ha expandido en los últimos años para permitir cálculos infinitos, ¿cuál es ahora el término correcto para lo que solía llamarse algoritmos (tiempo y recursos finitos)? (nadie se atreve a responder esto todavía … quiere apuñalar a ser el primero … incluso si está equivocado, obtendrá una educación de clase mundial sobre cómo lo ve CS teórico)

Aquí hay uno que va al núcleo de la primera pregunta:

¿El bucle de controladores para un sistema operativo es decidible por la definición de decidabilidad ofrecida por Alan Turing en 1936?

Etcétera. Pero como desea diseñar (y no aprender), los algoritmos aprenden a cuestionar todo y a todos. ¡Oblíganos a demostrar nuestros puntos, no los acepte al pie de la letra!

Aprender algoritmos se vuelve fácil si eres bueno en matemáticas, primero comprende qué es el algoritmo. Los algoritmos son un proceso paso a paso para resolver un problema, los algoritmos están en todas partes en su vida diaria, aquí hay un

Aquí hay un algoritmo fácil para hacer café: (ya que no eres un estudiante de ciencias de la computación)

Prepara café: entra a la cocina, ubica la cafetera. Encienda la cafetera. Deje que la cafetera se caliente. Agarra el relleno de agua. Camina para hundirte. Abra el grifo Llene el relleno hasta que el agua llegue a la línea que indica que está lleno. Si está lleno, cierre el grifo. Camina hasta la cafetera. Vuelva a insertar el relleno de agua. Tapa abierta para café. Cajón abierto. alcanzar en el cajón para k-cup. agarre el kcup y sáquelo del cajón e insértelo en la cafetera. Cerrar cajón. Camina hacia el gabinete. Abrelo. Grabmug y cierre cajón. Camina hasta el fabricante de café. Ponga la taza debajo del recipiente donde se dispensa el café. caminar al cajón. agarra la cuchara. Levante la cuchara del cajón. Cerrar cajón. caminar a la máquina de café. levante la tapa del azucarero, inserte la cuchara y llénela con azúcar. cierre la tapa de la azucarera. pon el azúcar de la cuchara en la taza. pon la cuchara abajo. Si la cafetera está lista, presione preparar. Espera a que el café termine de prepararse. apague la cafetera. ¡Disfruta el café!

Cuando se trata de ciencias de la computación, los algoritmos como el renderizado, la optimización, la programación, el algoritmo de búsqueda de la ruta más corta se basan en las matemáticas. Si eres bueno en matemáticas, te será fácil crear algoritmos.

Lea libros, busque en Google sobre el tema, vaya a Recursos e información de Wikipedia, haga una búsqueda en TED: Ideas que vale la pena difundir, consulte a una facultad sobre el tema

More Interesting

¿Es la seguridad una amenaza menor en el desarrollo integrado en comparación con el desarrollo web?

Cómo hacer de Windows 10 un entorno de desarrollador

¿Cuáles son algunos problemas que encuentran los analistas de garantía de calidad del software?

En ingeniería de software, ¿cuál es la diferencia entre alto acoplamiento y baja cohesión?

¿Qué software permite compartir códigos para que puedan desarrollar un proyecto con un equipo?

¿Cómo sería el mundo sin lenguajes de programación?

¿Cuáles son algunos buenos sistemas de gestión de documentos para pequeñas compañías farmacéuticas?

¿Sharepoint 2013 es la herramienta adecuada para el trabajo?

¿Qué tipo de estructura de equipo y jerarquía tienes cuando practicas Agile?

¿Por qué las aplicaciones o los juegos a menudo ofrecen la opción de idioma inglés británico o estadounidense? ¿Es la diferencia realmente notable e importante?

¿Cuáles son las principales tecnologías en las que estará trabajando un nuevo en el software DE SHAW India?

¿Qué habilidades esenciales se necesitan para ser un programador web de pila completa (mínimamente viable)?

¿Qué tipo de herramienta de depuración se puede implementar para que un depurador de software se vuelva eficiente en cuanto al tiempo para depurar un problema?

¿Qué tan importante es la organización del código en la programación?

¿Es el éxito de programadores como Jeff Dean, quien es considerado uno de los programadores modernos de élite, en parte debido a estar en el lugar correcto en el momento correcto?