求出数组最大值的几种方法

1、排序法

使用数组的sort()方法对数组进行排序,得到一个从小到大的有序数组,数组的第一个和最后一个元素就是我们要找的最小值和最大值:

var arr = [3, 5, 1, 4, 2]
arr.sort(function(a, b) {return a - b;
})
console.log(arr);   // [1, 2, 3, 4, 5]
console.log(Math.max(...arr));  // 5

2、使用ES6的扩展符

Math.max( ...arr ) 获取数组中的最大值

var arr = [3, 5, 1, 4, 2]
console.log(Math.max(...arr))  // 5

3、假设法


var arr = [3, 5, 1, 4, 2];
var max = arr[0];for(var i = 1; i < arr.length; i++) {arr[i] > max ? max = arr[i] : null;
}console.log(max); // 5

4、使用 Math.max.apply( null , arr )

Math.max() 虽然能取到最小值,但是不支持数组,所以可以用 Math.max.apply( null , arr )来获取数组中的最大值。

var arr = [3, 5, 1, 4, 2];var max = Math.max.apply(null, arr);
var min = Math.min.apply(null, arr);console.log(max, min) // 5,1

5、冒泡排序

var arr = [3, 5, 1, 4, 2];
for (var i = 0; i < arr.length - 1; i++) {var isChange = true;for (var j = 0; j < arr.length - 1 - i; j++) {if (arr[j] > arr[j + 1]) {isChange = false;var temp = arr[j];arr[j] = arr[j+1];arr[j+1] = temp;}}if (isChange) {break;}
}
console.log(Math.max(...arr))  // 5

求出数组最大值的方法相关推荐

  1. 调用方法求出数组两个元素的和

    有如下数组int[] arr={10,20}; 定义一个方法求两个数字的和(方法参数为两个int类型),使用这个方法求出数组这两个元素相加的结果并打印 package com.it;import ja ...

  2. 编程笔试(解析及代码实现):序列重排之给一个长度为n的序列A,求找出某种排列方式使得相邻两个数的差值之和最大并求出该最大值

    编程笔试(解析及代码实现):序列重排之给一个长度为n的序列A,求找出某种排列方式使得相邻两个数的差值之和最大并求出该最大值 目录 题目描述 代码实现 题目描述 序列重排:给一个长度为n的序列A,求找出 ...

  3. C语言试题二十二之定义了3×3的二维数组,并在主函数中赋值。函数的功能使求出数组周边元素的平均值并作为函数值返回给主函数中的s。

    1. 题目 定义了3×3的二维数组,并在主函数中赋值.函数的功能使求出数组周边元素的平均值并作为函数值返回给主函数中的s. 2 .温馨提示 C语言试题汇总里可用于计算机二级C语言笔试.机试.研究生复试 ...

  4. 求出数组中元素的总和_数组中所有元素的总和可被给定数K整除

    求出数组中元素的总和 This program will help to find out the sum of elements in an array which is divisible by ...

  5. 求数组的最大值php,求PHP数组最大值,最小值的代码

    求PHP数组最大值,最小值的代码,需要的朋友可以参考下. 代码如下: $fruits = array("155::vbscript::http://www.jb51.net/list/lis ...

  6. C语言编程>第二十周 ② 下列给定程序中,函数fun的功能是:求出数组中最大数和次最大数,并把最大数和b[0]中的数对调、次最大数和b[1]中的数对调。

    例题:下列给定程序中,函数fun的功能是:求出数组中最大数和次最大数,并把最大数和b[0]中的数对调.次最大数和b[1]中的数对调. 注意:不要改动main函数,不能增行或删行,也不能更改程序的结构. ...

  7. 7.请编写一个函数int fun(int*s,int t,int *k),用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。

    7.请编写一个函数int fun(int*s,int t,int *k),用来求出数组的最大元素在数组中的下标并存放在k所指的存储单元中. 例如,输入如下整数:876 675 896 101 301 ...

  8. 求出数组中超过一半的数

    Tango 是微软亚洲研究院的一个试验项目.研究院的员工和实习生们都很喜欢在 Tango上面交流灌水.传说,Tango 有一大"水王",他不但喜欢发贴,还会回复其他 ID 发的每个 ...

  9. 80x86汇编语言 循环结构 找出最小的偶数并在屏幕上显示 求出数组的平均值显示在屏幕上

    题目1 写一个完整的80X86汇编语言程序:键盘输入15个数据(转换成数值,存储到一维数组中,数值的长度为字),找出最小的偶数并在屏幕上显示,若没有偶数则显示"没有偶数!". .d ...

  10. 定义一个数组,然后从键盘输入10个整数,编程求出其最大值、最小值以及平均值(C语言)

    [本程序使用了定义冒泡排序函数和定义求平均函数的方法]#include <stdio.h> #include <math.h> void Bubblesort(int a[], ...

最新文章

  1. 了解一下:机器学习性能优化的6个指标
  2. XenApp_XenDesktop_7.6实战篇之九:SQL Server数据库服务器规划及部署
  3. 【数据竞赛】百赛百试,十试九灵的特征筛选策略-Pearson Correlation
  4. 2010 模板下载 罗斯文_俄罗斯签证办理攻略
  5. HihoCoder - 1465 后缀自动机五·重复旋律8(后缀自动机)
  6. 金立软件测试员,6GB运存有多强 金立M2017打开APP测试
  7. VTK:libvtkGUISupportQt-6.3.so.1: cannot open shared object
  8. jsp获得文件的绝对路径
  9. 超级计算机应用领域的概括,超级计算机进展的相关研究
  10. 给linux添加新硬盘
  11. 顶尖技术专家严选,15场前沿论坛思辨,2019中国大数据技术大会邀您共赴!
  12. Qt---MaintenanceTool
  13. Windows每月更新补丁离线安装包下载
  14. python三维建模可以加 贴图_三维模型都有哪些绘制贴图的软件??
  15. php copy路径出错,php – copy()函数的第二个参数不能是一个目录
  16. FrameMaker 2019中文版
  17. 堆外内存(off-heap),堆内存(on-heap)
  18. iOS 屏幕旋转监听
  19. 基于STM32设计物联网在线智能称重系统(OneNet)_2022
  20. win10系统无法正常自动启动服务

热门文章

  1. friendly发音_friendly是什么意思
  2. 【机器学习】偏差-方差分解Bias-variance Decomposition
  3. java正态分布的运用
  4. 同时使用动态库和静态库时怎么写makefile
  5. css案例_shortcut快捷导航样式
  6. php 队列管理器,Horizon 队列管理工具
  7. mysql数据库技术答案_高校邦《MySQL数据库高级技术》全套答案
  8. 简洁好用的Geek Unіnstaller
  9. VScode光标乱跳、换行失灵、保存导致光标乱跳等解决办法
  10. java实现微信H5支付和回调的Demo源码