开发者社区> 问答> 正文

想要用JAVA做出阶乘方面的问题,请问应该学习哪一块知识呢?我看网上有些人的算法,用了private

请问需要学习private相关知识吗?谢谢各位大神的解答!

展开
收起
知与谁同 2018-07-20 16:02:22 1699 0
2 条回答
写回答
取消 提交回答
  • 阶乘是数学算法,,,,只要懂JAVA语法就可以了

    ~
    2019-07-17 22:54:45
    赞同 展开评论 打赏
  • 杀人者,打虎武松也。
    用递归来做阶乘还真有点“为了用递归而用递归”的感觉,不过初学的话,拿来锻炼一下思维也是有益处的。
    递归是一个思路,它把一个问题分解成一个已知部分,和一个小一点规模的同样问题,这样逐渐的接近答案
    拿你这个问题做例子:
    首先乘法你是会的,1的阶乘你是知道等于1的,超过1的阶乘,你现在不会算,这是前提。
    5的阶乘可以分解成两个部分,5和4的阶乘,然后这两部分相乘,其中4的阶乘是比5的阶乘规模小一点,但是是一样的问题,这样使得递归可以进行下去。
    可以预见,最后会分解成1的阶乘,而这个问题是知道答案的,到此递归结束

    private是语法层面的问题,和算法丝毫不相干,不过你既然问到了,说明你基本不了解java,同样,也基本不了解递归算法。
    想达到你题目的目的,你需要准备以下几块内容和知识储备:
    1,在电脑上安装java开发环境,最小要求为JDK和JRE
    2,了解开发环境的基本配置,知道如何编译和运行java程序
    3,会写基本的java代码,会基本的语法(类,方法,变量,关键字),这个程度要求比写hello world要高一些,代码一共不到20行,但是初学者想一次通过没有错误,是很难的。
    4,了解递归算法的核心思想
    2019-07-17 22:54:45
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载