“Conocimientos Programación>C /C + + Programming

Función recursiva en C

2013/4/20
Un concepto poco utilizado en C es la función de repetición . Una función recursiva es simplemente una función que se llama . Las funciones recursivas pueden ser útiles en ciertas funciones , pero por lo general pueden ser reemplazados mediante el uso de un bucle . Propósito de la función recursiva

Una función recursiva puede ser utilizado cuando una operación se debe realizar repetidamente en un conjunto de datos . Por ejemplo , una función recursiva puede realizar varias veces una operación matemática en un valor numérico hasta que se cumpla una condición.
Crear una función recursiva

Cualquier función que se llama a sí mismo es una función recursiva . No hay requisitos especiales para una función para llamar a sí mismo, puede hacerlo como Cait llamaría cualquier otra función. A modo de ejemplo , la siguiente es una función recursiva para calcular el siguiente número en la secuencia Fibonacci :

largo fib ( n tiempo )


{ if ( n < = 2 )


{ return 1 ; }


más

{

regreso fib ( n - 1 ) + fib (n - 2 ) ;

}

}

Problemas con recursividad

recursividad tiene varios posibles problemas que deben ser considerados antes de escribir una función recursiva . Funciones recursivas pueden ser muy ineficiente , no sólo hay una sobrecarga de pila de llamar repetidamente a la función , las funciones recursivas pueden acabar fácilmente con tiempos de funcionamiento exponencial en función de la forma en que están escritas . Funciones recursivas también corren el riesgo de causar un desbordamiento de pila si el número de llamadas recursivas es demasiado alto.
Recursividad Vs . Iteración

mayoría de las funciones recursivas se pueden implementar como una función no recursiva que utiliza un bucle iterativo. Esto tiende a ser más eficiente y más seguro, pero en algunos casos puede ser más difícil de escribir y de leer.

Funciones recursivas son los más utilizados en la navegación de una estructura de árbol , o cuando se utiliza la iteración haría que el funcionar mucho más complejo. En la mayoría de los casos , la iteración se debe utilizar en su lugar.

C /C + + Programming
Cómo escribir un programa que lea una serie de nombres en un archivo en C
Cómo hacer que los códigos de números aleatorios Sólo Incluso en C + +
Cómo instalar una biblioteca de tiempo de ejecución C
Cómo ver la pila de llamadas en GDB
Cómo hacer un GUI en C
Convertidor de temperatura en C + + Uso de funciones
Cómo crear proyectos mediante programación C
Cómo escribir una línea de inversión de la función Utilizar punteros en C + +
Conocimientos Informáticos © http://www.ordenador.online