要求:使用递归算法完成阶乘:1!+2!+3!+4!+5!
package cn.itbaizhan; public class Test22 { public static void main(String[ ] args) { long d1 = System.currentTimeMillis(); int sum=(int) (factorial(1)+factorial(2)+factorial(3)+factorial(4)+factorial(5)); System.out.println("阶乘的结果为:"+ sum); long d2 = System.currentTimeMillis(); System.out.println("递归费时:"+(d2-d1)+"s"); //耗时:32ms } /** 求阶乘的方法*/ static long factorial(int n){ if(n==1){//递归头 return 1; }else{//递归体 return n*factorial(n-1);//n! = n * (n-1)! } } }
我采用的方法是将1到5都带入方法中后相加:
int sum=(int) (factorial(1)+factorial(2)+factorial(3)+factorial(4)+factorial(5));
但是如果要求1--1000的阶乘和呢,能不能采用循环的方式,具体的代码是怎样的
redis desktop manager不能连接是为什么
老师,老师,这边有点不太懂什么情况下,子类要在初始化里面,初始化父类,我看有些继承父类就不用初始化父类,比如这节课里面继承基类就不用在子类里面初始化父类,所以我想问下老师,那种情况下,要在子类里初始化父类
用sum()函数求数列的和不是更简单吗?
插入json对象是支持中文的吧,视频最后老师说错了
没听懂
老师,为什么跳转会闪退到第一页呢?
老师,请问这里为什么会进到case 0?
老师,最后一个参数order = ‘C’是什么意思呢?
老师,不是说内连接包括等值连接与非等值连接,自然连接等等,为什么这里说等值连接也可以称为内连接, 这里不是就存在矛盾了吗?
id()内存地址是如何被查找的?原理是什么?
这里定义类class MyNumbers 里面为什么不写__init__()方法了?
老师我有一个疑问,如果加锁后,B线程一直等待A线程执行完成后才执行,那始终只保持一个线程执行,那效率怎么来的,还是执行一个线程啊
老师有Java的api文档安装包么
Axis=0到底是处理行数据还是列数据,视频里说是列,文档里说是行
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637