博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA基本算法面试题:1斐波纳契数列
阅读量:6786 次
发布时间:2019-06-26

本文共 913 字,大约阅读时间需要 3 分钟。

开始学习JAVA,基础知识恶补!

斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)。

题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?   

以下是Java代码实现(递归与递推两种方式):

import java.util.Scanner;

public class Fibonacci {
public static void main(String[] args) {
System.out.println("请输入数字");
Scanner in = new Scanner(System.in);
int n = in.nextInt();

System.out.println("递归:第"+n+"个数是:"+fibonacci1(n));

System.out.println("递推:第"+n+"个数是:"+fibonacci2(n));
}
// 递归实现方式
public static int fibonacci1(int n){
if(n<=0){
return 0;
}
else if(n<=2){
return 1;
}
else{
return(fibonacci1(n-1)+fibonacci1(n-2));
}
}
public static int fibonacci2(int n){
if(n<=0){
return 0;
}
else if(n<=2){
return 1;
}
else{
int temp=0,num1=1,num2=1;
for(int i=3;i<=n;i++){
temp=num1+num2;
num1=num2;
num2=temp;
}
return temp;
}
}
}

欢迎交流!

 

转载于:https://www.cnblogs.com/extraman/p/4235852.html

你可能感兴趣的文章
服务器群集实验 ——SQL群集2
查看>>
企业级监控工具cacti安装配置全过程
查看>>
Hibernate的模块结构
查看>>
锁机制
查看>>
gentoo添加自启动
查看>>
Cocos2d-x 3.1 Lua Binding
查看>>
linux 进度条的实现及makefile的简单应用
查看>>
Linux命令:sed简介
查看>>
linux X界面 输入密码正确,但是无法登陆系统,命令行界面可以登陆
查看>>
杨中科老师-C语言也能干大事链接
查看>>
查看linux分区占用空间情况
查看>>
理解flexible.js所需的viewport知识
查看>>
rman 操作
查看>>
5种最流行的IO策略
查看>>
自反ACL(2)
查看>>
MySQL基础【MySQL运维实践】
查看>>
人工智能教程001:什么是人工智能以及相关知识要求
查看>>
30Mysql 的配置
查看>>
关于摄影的技巧,摄影爱好者们都好好学习吧
查看>>
Mac tips - 隐藏窗口及恢复
查看>>