Java中的递归
来源:互联网 发布:网络暴力电影下载 编辑:程序博客网 时间:2024/06/06 09:24
递归的含义
递归算法是一种直接或者间接调用自身函数或者方法的算法,Java递归算法是基于Java语言实现的递归算法。
注意:递归算法必须要有一个明确的递归结束条件
递归举例
(1) 斐波那契数列
斐波那契数列,又称黄金分割数列、因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……
在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)
求斐波那契数列的第n项的值?
package com.zhoujian.javatext;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); int a = getValue(9); } //1、1、2、3、5、8、13、21、34、…… //F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*) public static int getValue(int n) { if(n<=0) { return 0; } else if(n==1) { return 1; }else{ return getValue(n-1)+getValue(n-2); } }}
(2) 用递归求n的阶乘
package com.zhoujian.javatext;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); int b = getFactorial(5); } public static int getFactorial(int n) { if (n < 0) { System.out.println("无效输入,请重新输入!"); return 0; }else if (n == 1 || n == 0) { return 1; }else { return n * getFactorial(n - 1); } }}
阅读全文
0 0
- java中的递归
- java中的递归
- java中的递归调用
- 备忘:java中的递归
- java中的递归
- JAVA 中的递归
- Java中的递归问题
- Java 中的递归
- java中的递归
- Java 中的递归
- java中的递归
- Java中的递归
- Java中的递归
- Java中的递归
- Java中的递归
- java中的递归调用
- java中的递归
- Java中的递归算法
- dedecms数据库表和字段说明汇总
- arcgis api for javascript 各个版本的SDK下载
- 百度地图绘制轨迹点
- JSR 303 – Bean Validation 规范
- Android logo图标规范
- Java中的递归
- LBaas之(一)官网配置
- 一个关于LSTM的high-level介绍(但是很好):A Gentle Introduction to Long Short-Term Memory Networks by the Experts
- H3C交换机配置vlan
- JAVA03
- SSH框架学习笔记
- 物料自运过帐的模拟和修正
- laravel baum嵌套集合模型简单操作
- LBaas只(二) Neutron中的L4/L7高级服务框架与LBaaS