Ver Mensaje Individual
  #6 (permalink)  
Antiguo 10/02/2010, 21:54
devshared
 
Fecha de Ingreso: enero-2010
Mensajes: 25
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Serie fibonacci

Aquí tienes una Clase Fibonacci que había hecho para una tarea en la facultad, talvez te sirva

Código JAVA:
Ver original
  1. /**
  2.  * Autor: Jorge Ramirez.
  3.  */
  4. public class Fibonacci {
  5.     long numeros[]  = null;  //tabla utilizada para almacenar los valores asi no seran recalculados (Programación Dinamica).
  6.     public Fibonacci( int size ){
  7.         numeros = new long[size];
  8.         for(int i = 0; i < size ; i++ ){
  9.             numeros[i] = 0;
  10.         }
  11.         numeros[0] = numeros[1] = 1;
  12.     }
  13.    
  14.      /* funcion para calcular la serie fibonacci de un nro utilizando la Técnica Divide y Vencerás*/
  15.      public long fiboDV( int numero ){
  16.         if( numero == 0 || numero == 1 ){
  17.             return 1;
  18.         }
  19.         else{
  20.             return ( numeros[numero] = fiboDV(numero-1) + fiboDV(numero-2));
  21.         }
  22.     }
  23.  
  24.      /* funcion para calcular la seriefibonacci de un nro utilizando la Técnica de Programación Dinamica*/
  25.     public  long fiboDI( int numero ){
  26.         if( numeros[numero] != 0){
  27.             return numeros[numero];
  28.         }
  29.         else{
  30.             return (numeros[numero] = fiboDV(numero-1) + fiboDV(numero-2));
  31.         }
  32.     }
  33.     // retorna todos los numeros de la serie fibonacci del numero ingresado
  34.     public String serie(){
  35.         String s = "";
  36.         for(int i = 0 ; i < numeros.length ; i++){
  37.             if(numeros[i] != 0)
  38.                 s += numeros[i] + " ";
  39.         }
  40.         return s;
  41.     }
  42. }


Para los conceptos que se mencionan en la clase, por si tengas curiosidad

http://es.wikipedia.org/wiki/Programaci%C3%B3n_din%C3%A1mica_%28inform%C3%A1tic a%29

http://es.wikipedia.org/wiki/Algoritmo_divide_y_vencer%C3%A1s

Saludos



------------------------------------
visiten www.devshared.net