美文网首页
js求数组最值

js求数组最值

作者: duans_ | 来源:发表于2018-09-22 19:45 被阅读10次

求数组中的最大数

  • 常规做法
var arr=[11,222,333,44,55];
  1. 方案一

通过apply方法调用内置对象Math.max()方法

function getMax(max){
   return  Math.max.apply(null,arr);
}
  1. 方案二

假设索引为0的元素为最大值,然后循环用每个元素和最大值比较,最终取得最大值

function getMax(arr){
    if(arr.length<=1){
        return arr[0];
    }
   var max=arr[0];
   for(var i=0;i<arr.length;i++){
       if(arr[i]>max){
           max=arr[i];
       }
   }
   return max;
}
  1. 方案三

先对数组进行升序排序,然后直接取出最后一个元素,即为最大值

function getMax(){
    if(arr.length<=1){
        return arr[0];
    }  
    //升序排列数组
    arr.sort(function(a,b){
        return  a-b;
    });  
    //取出最后一个元素,即为最大值
    return arr[arr.length-1];
}
  1. 方案四

es6扩展运算符

function getMax(arr){
    return Math.max(...arr)
}

求数组中的最小数

  • 常规做法
var arr=[11,222,333,44,55];
  1. 方案一

通过apply方法调用内置对象Math.min()方法

function getMin(arr){
    return Math.min.apply(null,arr);
}
  1. 方案二

假设索引为0的元素为最小值,然后循环用每个元素和最小值比较,最终取得最小值

function getMin(arr){
    if(arr.length<=1){
        return arr[0];
    }
   var min=arr[0];
   for(var i=0;i<arr.length;i++){
       if(arr[i]<min){
           min=arr[i];
       }
   }
   return min;
}
  1. 方案三

先对数组进行升序排序,然后直接取出最后一个元素,即为最小值

function getMin(){
    if(arr.length<=1){
        return arr[0];
    }  
    //升序排列数组
    arr.sort(function(a,b){
        return  b-a;
    });  
    //取出最后一个元素,即为最大值
    return arr[arr.length-1];
}
  1. 方案四

es6扩展运算符

function getMin(arr){
    return Math.min(...arr)
}

相关文章

  • Fenwick Tree/B.I.T树状数组算法

    树状数组适用范围:给定区间,求最值,求和,区间单点修改。与RMQ不同的是,RMQ一般只用作区间求最值。但在最值方面...

  • js求数组最值

    求数组中的最大数 常规做法 方案一 通过apply方法调用内置对象Math.max()方法 方案二 假设索引为0的...

  • jsday02

    数组 数组求最大值 数组求最小值 数组拼接成字符串 反转数组 冒泡排序 阻止链接跳转 数组的一些方法

  • js 数组,json求和的方法 reduce

    JS计算数组的总和 1.最简单的遍历累计 reduce() 求数组的值 1,利用reduce(),reduce()...

  • function

    求任意数组的最大值 求任意数组的最小值 //求任意范围数字和 求任意数字的总和 // type 检测参数数据类型...

  • js 取两个数组中一样的值

    js取两个数组一样的值 附上js取两个数组不一样的值

  • JS 根据数组中的某个属性值排序

    JS 根据数组中的某个属性值排序 /* 根据数组中的某个属性值排序 */function compareByKey...

  • 第2章 数组

    数组是最简单的内存数据结构,几乎所有编程语言都原生支持数组类型,尽管 JS 数组中可以保存不同类型的值,但像其他语...

  • JS求最大值和数组去重

    一、求最大值: 二、数组去重:

  • leetcode 题解

    1. 关于旋转数组 旋转数组求最小值,最大值,以及任意值:https://leetcode.windliang.c...

网友评论

      本文标题:js求数组最值

      本文链接:https://www.haomeiwen.com/subject/skmxoftx.html