¿Cuál es el algoritmo conceptual en programación?

Al leer mi respuesta, considere que todavía no soy un programador, que recién he comenzado a aprender. Espero que mi respuesta sea útil.

“En matemáticas y ciencias de la computación, un algoritmo es una secuencia autónoma de acciones a realizar. Los algoritmos pueden realizar tareas de cálculo, procesamiento de datos y razonamiento automatizado “.

Fuente: Wikipedia.

Hombre, odio este tipo de definiciones! Creo que esto no te ayudó en absoluto, ¡pero te daré un ejemplo de la vida real!

Todos usan diccionarios. Digamos que estás aprendiendo inglés, así que buscas una palabra en el diccionario. Para este ejemplo, la palabra es: “cuero”.

¡Abre el diccionario en el medio y descubre que abrió en la letra O! Ah, entonces te das cuenta de que L está antes de la O, así que regresas unas páginas. Encuentra la letra M, que también está antes de L, por lo que retrocede unas páginas nuevamente. ¡Felicidades, has encontrado tu palabra!

Ni siquiera te diste cuenta, pero usaste la búsqueda binaria.

En programación, este algoritmo se usa para buscar un elemento en una matriz ordenada.

Básicamente, los programadores usan algoritmos para resolver algunos problemas específicos de la manera más eficiente. Es por eso que no revisó todas las letras de la A a la L. Sabía que el diccionario estaba ordenado, por lo que eligió una letra aleatoria y decidió si la buscada es anterior o posterior. Encontraste tu palabra en 3 pasos, en lugar de revisar cada página desde el comienzo del diccionario.

Espero no haber cometido muchos errores al expresarme, el inglés es mi tercer idioma.

Es básicamente el conjunto de reglas a seguir para lograr una solución a un problema de programación.

Digamos que quieres ordenar 4 libros.

Los 4 libros tienen B, C, A, D como títulos. Obviamente queremos la respuesta A, B, C, D. Pero, ¿cuál es su estrategia para llegar a la solución deseada?

Una forma de hacerlo es.

  1. Comience desde el primer libro hasta el último, comenzando de izquierda a derecha.
  2. Compare el libro actual con el libro de la derecha.
  3. Si el libro actual debe estar después de ese libro, cámbielo. El libro actual ahora es el libro correcto.
  4. Regrese a 2 hasta que no haya más libros a la derecha del libro actual.
  5. Regrese a 2. y continúe volviendo a él hasta que cumpla con la regla de 1.

Esto es en realidad lo que se conoce en programación como el algoritmo de clasificación de burbujas. Es uno de los peores algoritmos para ordenar. Échales un vistazo aquí Algoritmos de clasificación | Brilliant Math & Science Wiki hay incluso algunos gifs allí.

Los algoritmos son un conjunto de pasos definidos para la resolución de problemas.

Digamos que está creando una aplicación de GPS.

El usuario ingresa las coordenadas iniciales y las coordenadas de destino.

Ahora el trabajo de su aplicación es calcular la ruta más corta entre esos puntos.

Ahora, ¿cómo haces eso? Este es nuestro problema a resolver.

Usted puede:

1 / almacenar una lista de todas las rutas desde el punto A al punto B

2 / calcular distancias de todos los caminos de la lista

3 / devuelve el que tiene la distancia más corta

Ahí tienes, tienes un conjunto de pasos que resuelven un problema, que es exactamente lo que es un algoritmo.

More Interesting

¿Cómo explica matemáticamente la conversión de tipos?

¿Para qué se usan los cierres de relaciones binarias (teoría de conjuntos)?

¿Cómo se usa el cálculo multivariable en informática?

¿Cuál es el significado del Lema Hardcore de Impagliazzo?

¿Se pueden modelar todos los algoritmos iterativos de forma recursiva y viceversa?

¿Cuáles son algunas aplicaciones del mundo real de min-cut en la teoría de grafos?

¿Cuál es el significado del teorema de Shamir?

¿Puede la ciencia / psicología cognitiva ayudarlo a comprender otras áreas más rápidamente, como las matemáticas, la física y la informática?

Si C / C ++ es más rápido, ¿por qué otros lenguajes no se compilan primero en C / C ++ y solo después en el código de máquina?

¿Cuál es la complejidad temporal de generar todos los subconjuntos posibles de un conjunto? ¿Es 2 ^ n?

¿Qué es la reducción del tiempo polinomial?

¿En qué circunstancias necesitaría un desarrollador web utilizar estructuras de datos como Listas vinculadas, BST y Gráficos?

¿A qué programas de Maestría en Ciencias de la Computación debo aplicar?

¿Cuál es la forma más eficiente de resolver el problema 27 del Proyecto Euler?

Dada una matriz que contiene elementos [matemática] N [/ matemática] y consultas [matemática] Q [/ matemática], cada consulta contiene 3 enteros [matemática] L [/ matemática], [matemática] R [/ matemática] y [matemática ] K [/ matemáticas]. Para cada uno, informe la suma de cada elemento [math] K ^ {th} [/ math] entre [math] L [/ math] y [math] R [/ math] (a partir de [math] L [/ math] )