Grandes números de Fibonacci en Java

Dado un número n, encuentre el n-ésimo número de Fibonacci. Tenga en cuenta que n puede ser grande.

Ejemplos:

Input : 100
Output : 354224848179261915075

Input : 500
Output : 139423224561697880139724382870
         407283950070256587697307264108962948325571622
         863290691557658876222521294125 

Requisito previo: clase BigInteger en Java , números
de Fibonacci Fibonacci de gran número puede contener más de 100 dígitos, BigInteger puede manejarlo fácilmente en Java. La clase BigInteger se usa para la operación matemática que involucra cálculos de enteros muy grandes que están fuera del límite de todos los tipos de datos primitivos disponibles.

JAVA

// Java program to compute n-th Fibonacci
// number where n may be large.
import java.io.*;
import java.util.*;
import java.math.*;
  
public class Fibonacci
{
    // Returns n-th Fibonacci number
    static BigInteger fib(int n)
    {
        BigInteger a = BigInteger.valueOf(0);
        BigInteger b = BigInteger.valueOf(1);
        BigInteger c = BigInteger.valueOf(1);
        for (int j=2 ; j<=n ; j++)
        {
            c =  a.add(b);
            a = b;
            b = c;
        }
  
        return (b);
    }
  
    public static void main(String[] args)
    {
        int n = 100;
        System.out.println("Fibonacci of " + n +
            "th term" + " " +"is" +" " + fib(n));
    }
}
Producción

Fibonacci of 100th term is 354224848179261915075

Tenga en cuenta que la solución anterior toma O (n) tiempo, podemos encontrar el n-ésimo número de Fibonacci en O ( log n) tiempo . Como ejercicio, encuentre el n-ésimo número de Fibonacci para n grande en tiempo O(log n).
Este artículo es contriBigInteger.valueOf (1); pero por Pramod Kumar . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *