| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> Programación Java >> Content
    Problemas recursividad en Java
    En un programa Java, un método recursivo es un método que se llama . Métodos recursivos pueden ayudar a los programadores a diseñar un fragmento de código para simplificar un problema. Métodos recursivos a menudo parecen ser conciso , pero la creación de una función recursiva eficaz puede ser muy difícil . Al igual que con los bucles y otras estructuras de control de Java, los desarrolladores tienen que trabajar a través de lo que sucederá cuando una función recursiva ejecuta. Métodos recursivos causan una serie de problemas comunes cuando no está estructurado correctamente. Problema Solución Fallo

    programadores usan métodos recursivos para resolver problemas particulares. Naturalmente, un método recursivo no proporcionará funcionalidad útil si no resuelve el problema que fue diseñado para . Esto sucede a veces cuando el programador ha optado por utilizar una función recursiva en los que no es apropiado . En general , un método iterativo es ideal para situaciones en las que necesita para resolver un problema usando pasos iterativos . Cada vez que el método se ejecuta , debe hacer que el problema más simple y traer a su programa de un paso más cerca de resolverlo. El resultado final del método recursivo debe ser la solución a su problema, por ejemplo, la localización de un elemento en un objeto de colección de datos.
    No End Case

    Para una función recursiva para trabajar sin que su programa atrapado en un bucle infinito , debe tener un caso extremo bien definido . Esto significa que debe haber una ejecución final , en lugar de ejecutar el método sin fin . Los programadores suelen implementar esto usando sentencias condicionales dentro del método , como en el siguiente ejemplo : public void doItRecursively (int num) {if (num < 1 ) return; else { System.out.println ( num) ; doItRecursively (num /2 ) ;} }

    Para llamar a esta función , un programa puede utilizar el siguiente código : doItRecursively ( 10 ) ;

    en este caso la función se ejecutará cinco veces , salir en la quinta iteración. Cada vez que se ejecuta el método que se acerca más a la situación final , que el condicional if comprueba para . Si el método no contenía la sentencia condicional , sería repetir interminablemente .
    No Recursión

    La cuestión en contra de un método iterativo bucle sin fin es un método eso no quiere iterar en absoluto. Esto también ocurre cuando la sentencia condicional no está estructurado correctamente. Por ejemplo , dado el método " doItRecursively " , la siguiente instrucción if alterado podría causar un problema : si (num > 0 ) de retorno;

    Si el método sólo se llama con valores enteros positivos como el parámetro , su contenido nunca se repetirá como se habrá alcanzado el punto final de inmediato.
    método incorrecta llamadas

    Si el programador llamar a un método recursivo no tiene una idea clara de su función , se puede utilizar de una manera que causa iteración sin fin o sin iteración . Por ejemplo, el siguiente código condicional alteración en el método podría fácilmente ser llamado correctamente : if ( num < 0 ) return;

    Si el método sólo se llama con los valores de parámetros enteros positivos , nunca llegar a este punto final y se producirá un bucle infinito. Métodos recursivos pueden causar muchos de los mismos peligros como bucles , por lo que no requieren la práctica de su aplicación efectiva.

    Previous :

    next :
      Artículos relacionados
    ·Cómo solucionar problemas de Java 
    ·Cómo establecer atributos de la sesión en JSP 
    ·Cómo interpretar el Java Regex 
    ·Cómo calcular los cheques de una cadena mediante Adler…
    ·Cómo analizar una cadena en Java 
    ·Cómo configurar Java Classpath en Ventanas 
    ·Cómo dibujar triángulos en Java 
    ·Cómo convertir una cadena alfabética a Números en Ja…
    ·¿Cómo puedo implementar una bolsa de canicas en Java 
    ·Cómo construir una base de datos de aplicaciones de es…
      Artículos destacados
    ·Cómo hacer matrices en C + + 
    ·Cómo convertir formato de fecha en Transact -SQL 
    ·Los pasos para convertir una interfaz gráfica de usuar…
    ·Cómo crear un archivo de texto usando C + + 
    ·Cómo concatenar cadenas en Python 
    ·Cómo escribir métodos en Pseudocódigo 
    ·Tipos de datos de Visual Basic 
    ·Ventajas y desventajas de la clase de burbuja 
    ·Cómo establecer el foco en otra ventana utilizando Vis…
    ·Cómo utilizar My Scripts Python con Blender 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com