`
y150988451
  • 浏览: 195402 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

求n的阶层

阅读更多
方法一:用递归  递归方法思路清晰,编程简单(不能承担大容量的计算,例如超过几十的阶层,运算速度急速下降),时间复杂度是
public int fun(n){
  if(n<0){
    throw new MyException("负数不能求阶层");
  }else{
    if(n<=1){
      return 1;
    }else{
       return n*fun(n-1);
     } 
  }
}



方法二:用for循环  虽然效率也不是很快,但是时间复杂度只有n,单层循环效率肯定比递归快
  public int fun(n){
     int sum=1;
     for(int i=n;i>=1;n--){
       sum=sum*i
     }
     return sum;
  }
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics