朋也的博客 » 首页 » 文章

算法 - 打印1000以内的斐波那契数列

作者:朋也
日期:2019-04-27
类别:算法学习笔记 


版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证

规律: 前两项的和跟第三项相等

原链接文:https://atjiu.github.io/2019/04/27/algorithm-2/

@Test
public void test() {
  print(1, 1, 1000);
}

/**
  * 递归打印斐波那契数列
  *
  * @param i   第一项
  * @param j   第二项
  * @param max 最大数
  */
private void print(int i, int j, int max) {
  // 如果j为1, 说明是前两项, 因为前两项都是1, 提前打印出来
  if (j == 1) System.out.print(i + ", " + j + ", ");
  int sum = i + j;
  if (sum > max) return;
  System.out.print(sum + ", ");
  print(j, sum, max);
}
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987

写博客不易,转载请保留原文链接,谢谢!