栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

(java-8)递归实现1~n相加

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

(java-8)递归实现1~n相加

什么是递归,它是如何工作的?

我们先来看一下递归(recursion)的定义:

递归是一种解决问题的有效方法,在递归过程中,函数将自身作为子例程调用。

简单说程序调用自身的编程技巧叫递归。递归的思想是把一个大型复杂问题层层转化为一个与原问题规模更小的问题,问题被拆解成子问题后,递归调用继续进行,直到子问题无需进一步递归就可以解决的地步为止。

使用递归需要避免出现死循环,为了确保递归正确工作,递归程序应该包含2个属性:

    基本情况(bottom cases),基本情况用于保证程序调用及时返回,不在继续递归,保证了程序可终止。递推关系(recurrentce relation),可将所有其他情况拆分到基本案例。
    public class Recurd{ 
    	public static void main(String[] args) {
    		java.util.Scanner s= new java.util.Scanner (System.in);
    		int a=s.nextInt();
    		int retValue=sum(a);
    		System.out.println(retValue);
    	}
    	public static int sum(int n){
    		if (n==1){
    			return 1;
    		}
    		return n+sum(n-1);
    	}
    }
    

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/723602.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号