Eso depende de cómo juzgues la complejidad. Si está pensando en términos de la secuencia de operaciones evaluadas por la computadora, sí, el enfoque recursivo es más complejo que el enfoque iterativo.
Si está pensando en términos de definiciones, el enfoque recursivo es el algoritmo más simple posible, ya que se expresa como nada más que la definición de la función. Es mucho más fácil demostrar que es correcto que el enfoque iterativo, donde tendrías que razonar sobre los invariantes de bucle.
En mi experiencia docente, las personas que tienen problemas con la recursividad generalmente no comprenden los conceptos de razonamiento por definición y demuestran rigurosamente la corrección. Una vez que esas ideas se entienden e internalizan, el concepto de recursión de repente parece mucho menos complicado.
- No soy bueno con los algoritmos y no puedo encontrar una solución hasta que alguien me lo diga. ¿Cómo puedo arreglar esto?
- ¿Pueden los pesos de Bellman-Ford ser funciones y no constantes?
- ¿Cómo funciona la recursividad en el árbol de búsqueda binaria en orden? ¿Cómo se pueden explicar las llamadas recursivas, sin resumirlas como llamadas de pila?
- ¿En qué se diferencia la ramificación y el límite del retroceso?
- ¿Cuál es el papel de la memoria de montón?
En términos de velocidad, el algoritmo recursivo es mucho más lento. Ser más rápido no era el punto. Lo más probable es que sus maestros explicaron este algoritmo para ayudar a introducir el concepto de recursión y el concepto de expresar funciones en términos de sus definiciones.