给定一个正整数n(n>1),采用蛮力法求1!+2!+3!+…+n!,并改进该算法来提高效率。
时间: 2023-11-17 22:58:40 浏览: 108
1!+2!+..n!
给定一个正整数n(n>1),采用蛮力法求1!+2!+3!+…+n!的方法是使用while循环或递归函数调用阶乘方法求和。其中,while循环的方法是通过循环计算每个数的阶乘并将其累加,而递归函数调用阶乘方法求和则是通过递归调用阶乘函数来计算每个数的阶乘并将其累加。这两种方法都是蛮力法,效率较低。
为了提高效率,可以采用数组来存储每个数的阶乘,避免重复计算。具体方法是,先计算出1到n的阶乘并存储在数组中,然后遍历数组并将每个数的阶乘累加起来即可。这种方法的时间复杂度为O(n),效率较高。
阅读全文