Fibonacci en java

Voir le sujet précédent Voir le sujet suivant Aller en bas

Fibonacci en java

Message par tutosfaciles48 le Mer 20 Jan - 22:12

public class fibo
{
public static void main(String args[])
{
int N = Integer.parseInt(args[0]);
System.out.println(fib(N));
}
public static int fib(int n)
{
if (n < 2) return(n);
return( fib(n-2) + fib(n-1) );
}
}

Code source:


Code:


package demo;

/**

Code source envoyé à Scriptol par:
Christian Clausen
Computer scientist - Aarhus University - Denmark
*/

import java.util.Date;

public class Main
{
  private static long[] fib;
  public static void main(String[] args)
  {
      Long t1;
      int maxi = Integer.parseInt(args[0]);

      // recursive
      t1 = new Date().getTime();
      System.out.println("Recursive:");
      System.out.println(rec(maxi));
      System.out.println(new Date().getTime() - t1);

      // iterative
      System.out.println("Iterative:");
      t1 = new Date().getTime();
      System.out.println(ite(maxi));
      System.out.println(new Date().getTime() - t1);
  }

  private static long rec(int n){
      if(fib==null){
          fib = new long[n+1];
          for(int i = 0; i< n+1; i++)
              fib[i] = -1;
      }

      if(fib[n]==-1)
          if(n < 2)
              fib[n] = n;
          else
              fib[n] = rec(n-1) + rec(n-2);
      return fib[n];

  }

  private static long ite(int n){
      long[] ita = new long[n+1];
      ita[0] = 0;
      ita[1] = 1;
      for(int i = 2; i < n+1; i++){
          ita[i] = ita[i-1] + ita[i-2];
      }
      return ita[n];
  }


}
avatar
tutosfaciles48
Admin

Messages : 22
Points : 67
Réputation : 0
Date d'inscription : 26/10/2015

Voir le profil de l'utilisateur http://tutosfaciles48.forumactif.org

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum