Bueno, intente visualizar la solución para agregar dos enteros positivos utilizando la función recursiva realmente costosa add (x, y) (código de estilo Javascript aquí):
función add (v1, v2) {// agregar v1 y v2
if (v2 === 0) {// condición de detención: devuelve v1 ya que v2 no puede reducirse por debajo de 0
volver v1;
}
return add (v1 + 1, v2 – 1); // sigue aumentando v1 con 1, disminuyendo v2 con 1
}
Asi que:
Hasta la condición de detención (en cuyo caso ha determinado el “final” de su problema, v2 === 0), llama a la función original con una modificación de las variables que tiene un resultado final predefinido.
Cuando v2 llegue a 0 (la condición de detención), habrá aumentado v1 con la cantidad necesaria para disminuir v2 a 0 en pasos de 1.
- ¿De qué se tratan las estructuras de datos como curso de informática? . ¿Y depende de algún idioma?
- ¿Cuán relevantes son los fundamentos de CS (compiladores, análisis de algoritmos, estructuras de datos, etc.) en el desarrollo web profesional?
- ¿Son los problemas NP completos también problemas NP difíciles? ¿Por qué?
- Noto que las estructuras de datos son difíciles de entender y asimilar con solo leerlas. ¿Qué tengo que hacer?
- ¿Hay alguna manera de resolver SPOJ.com - Problema GSS1 sin árboles de segmentos?
Solo recuerde que siempre debe definir primero su condición de detención.