Ejemplos de desarrollo de software:
- depuración de una pieza de código algo lineal. Si el código tiene muchos pasos ejecutados principalmente en una secuencia y hay un error, puede aislar el error al encontrar el primer paso donde el código produce resultados que son diferentes de los esperados.
- cherry eligiendo un cambio de código incorrecto de un candidato de lanzamiento. Al impulsar un lanzamiento de código grande en producción, a veces se encuentra que hay un problema con ese binario. Si revertir todo el lanzamiento no fuera una opción, el ingeniero de lanzamiento buscaría binariamente a través de los identificadores de cambio de código. Él descubriría el primer cambio de código que crea el error.
- averiguar los requisitos de recursos para un sistema grande. uno podría intentar ejecutar pruebas de carga en el sistema y buscar en binario la cantidad mínima de CPU requerida para manejar una carga prevista. (este enfoque es mejor que adivinar al azar, pero mucho peor que hacer un análisis de su sistema y hacer algunas conjeturas bien fundamentadas)
Ejemplos de acertijos algorítmicos:
- Dado A, una matriz ordenada descubre cuántas veces ocurre x en A.
- Dado un número real x, descubre su raíz cúbica.
- Dado A una matriz ordenada con números distintos, encuentre una i tal que A [i] == i.
- Dadas las operaciones +, -, *, /, sqrt y un número real x, encuentre un algoritmo para obtener log_2_x.
- Dado un conjunto de números distintos A, de modo que A [0]> A [1] y A [n-1]> A [n-2] encuentre un mínimo local (descubra un i tal que A [i-1] > A [i] <A [i + 1]).
- Deje A ser una matriz ordenada con elementos distintos. A se gira k posiciones hacia la derecha (se desconoce k). Descubre k.
- Deje A ser una matriz ordenada con elementos distintos. A se gira k posiciones hacia la derecha (se desconoce k). Averigüe si A contiene un número x.
- Dadas dos matrices ordenadas de longitud ny m, descubra el elemento k de su unión ordenada.
- Dado A, una matriz compuesta por una secuencia creciente de números seguida inmediatamente por una secuencia decreciente. Determine si un número dado x está en la matriz.
- Dada una matriz de N valores int distintos en orden ascendente, determine si un entero dado está en la matriz. Puede usar solo sumas y restas y una cantidad constante de memoria adicional.
- El jugador A elige un número secreto n. El jugador B puede adivinar un número xy A responde cómo se compara x con n (igual, mayor, menor). ¿Cuál es una estrategia eficiente para que B adivine n?
- En un algoritmo, ¿cuál es el significado real de la complejidad del espacio?
- Cómo equilibrar el tiempo entre el desarrollo web de aprendizaje (JavaScript) y las estructuras de datos de algoritmos
- ¿Cuál es la mejor manera de ordenar una matriz de objetos en javascript?
- Si quiero resolver problemas del mundo real, ¿qué debo hacer, encontrar esos problemas y luego aprender las estructuras de datos y algoritmos requeridos o viceversa?
- ¿Qué se debe saber o hacer antes y al escribir un algoritmo?