当前位置: 首页 > news >正文

计算10的阶乘

一、不好的写法

    public static void main(String[] args) {long fun = fun(10);System.out.println(fun);}public static long fun(long n) {if (n == 1) {return 1;}return n * fun(n - 1);}

使用递归完成需求,fun1方法会执行10次,并且第一次执行未完毕,调用第二次执行,第二次执行
未完毕,调用第三次执行…最终,最多的时候,需要在栈内存同时开辟10块内存分别执行10个fun1方法。

二、好的写法

    public static void main(String[] args) {long fun = fun(10);System.out.println(fun);}public static long fun(long n) {int result = 1;for (int i = 1; i <= n; i++) {result *= i;}return result;}

使用for循环完成需求,fun2方法只会执行一次,最终,只需要在栈内存开辟一块内存执行fun2方法
即可。

http://www.lryc.cn/news/214312.html

相关文章:

  • 6.卷积神经网络
  • postgresql|数据库|SQL语句冲突的解决
  • overflow溢出属性、定位、前端基础之JavaScript
  • 【JS】Chapter6-Dom 获取属性操作
  • 太极培训机构展示服务预约小程序的作用如何
  • node使用path模块的基本使用
  • 我和云栖大会有个约会
  • Linux各个发行版之间的关系
  • 第一章 第一行Android代码
  • 怎样利用 AI 大模型,辅助研发管理与效能提升?
  • 聊天室的创建
  • 大数据信息抽取
  • 驱动开发11-1 编写IIC驱动-读取温湿度数据
  • 上海中优城市万豪酒店推出全新国际IP童趣主题房,独特住宿体验中国首秀
  • zsh和bash之间互相切换
  • Java - window系统快捷键大全
  • 深入理解数据结构(1)—用链表实现栈
  • Jtti:debian安装firewalld错误怎么办
  • 如何理解python中的*args和**kwargs
  • 软考之软件工程基础理论知识
  • 香港服务器不稳定的几种情况
  • 报修软件有什么用?企业如何做好设备管理与维护?
  • Go语言的键盘输入和打印输出
  • jenkins实践篇(2)—— 自动打tag的可回滚发布模式
  • golang worker channel 模式
  • 舔狗日记之好一条舔狗
  • 【地理位置识别】IP归属地应用的特点
  • 华为实验基础(2):路由器基础
  • 婚姻管理系统-使用bbst数据结构
  • 软件架构的概念