zoukankan      html  css  js  c++  java
  • 使用递归计算给定数组元素的总和

    计算给定数组 arr 中所有元素的总和,转载自CSDN博客网

    1.不考虑算法复杂度,用递归做:

      function sum(arr) {
        var len = arr.length;
        if(len == 0){
         return 0;
        }else if (len == 1){
         return arr[0];
        }else {
          return arr[0] + sum(arr.slice(1));
        }
      }
    2.常规循环:
      function sum(arr) {
        var s = 0;
        for (var i=arr.length-1; i>=0; i--) {
          s += arr[i];
        }
        return s;
      }
    3.函数式编程 map-reduce:
      function sum(arr) {
        return arr.reduce(function(prev, curr, idx, arr){
          return prev + curr;
        });
      }
    4.forEach遍历:
      function sum(arr) {
        var s = 0;
        arr.forEach(function(val, idx, arr) {
          s += val;
        }, 0); 
         return s;
      };
    5.eval:
      function sum(arr) {
        return eval(arr.join("+"));
      };
     
  • 相关阅读:
    es6常用语法(持续更新中)
    发送请求时params和data的区别
    js引擎查询 LHS RHS(消化ing)
    Linux常用命令(持续更新)
    Https理解
    MVVM理解
    原生js与jquery区别
    Cookie如何防范XXS攻击
    基于python的appium环境搭建
    pycharm安装步骤
  • 原文地址:https://www.cnblogs.com/gongjing93/p/8303465.html
Copyright © 2011-2022 走看看