• JavaScript的大数阶乘


    一道算法题,以前51js上讨论过。思路就是自己实现乘法运算,如果用递归,如果求1000的阶乘就要出现脚本失控了

    51JS上最为经典的方法:

       1: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
       2: <html xmlns="http://www.w3.org/1999/xhtml">
       3:  <head>
       4:   <title> new document </title>
       5:   <meta name="generator" content="editplus" />
       6:   <meta name="author" content="" />
       7:   <meta name="keywords" content="" />
       8:   <meta name="description" content="" />
       9:  </head>
      10:  
      11:  <body>
      12: <script type='text/javascript'>
      13: function factorial(n) {
      14:     var a = [1];
      15:     for (var i = 1;i<=n ;i++) {
      16:         for (var j = 0, c = 0;j<a.length || c != 0;j++ ) {
      17:             var m = (j < a.length) ? (i*a[j] + c) : c;
      18:             a[j] = m % 10;
      19:             c = (m - a[j]) / 10;
      20:         }
      21:     }
      22:     
      23:     return a.reverse().join("");
      24: }
      25:  
      26: var num = 1000;
      27:  
      28: alert(factorial(num));
      29: </script>
      30:  </body>
      31: </html>
  • 相关阅读:
    LINUX学习笔记day2
    android 获取正在运行的服务
    android小部件
    android开发_国外论坛
    取消线程
    AlarmManager的使用
    PendingIntent
    SharedPreferences 的使用
    流量监听
    android 异常-access to constructor not allowed
  • 原文地址:https://www.cnblogs.com/meteoric_cry/p/1979287.html
Copyright © 2020-2023  润新知