数据结构与算法笔记

P7

1.什么是算法

 算法是用于解决特性问题的一系列的执行步骤

2.计算0 1 1 2 3 5 8 13 ...

思路:第n项是n-1项加上n-2项,当n小于等于1时,增加退出条件,不然递归死循环

所有有:

public static int fib(int a,int b)

{

  if( n<= 1 )  return n;

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

}

但是上面有性能问题,应该做性能优化:

0  1  2  3  4  5  6

0  1  1  2  3  5  8

public static int fib2(int  n)

{

  if(n <= 1) return n;

  int first = 0;

  int second = 1;

  for(int i = 0 ; i < n-1; i++){

    int sum = first + second;  //1

    first = second;  //3

    second = sum; //2

  }

  return second;

}

 

posted @ 2020-02-22 00:42  余***龙  阅读(114)  评论(0编辑  收藏  举报