1. 程式人生 > >使用Math.max,Math.min獲取陣列中的最值

使用Math.max,Math.min獲取陣列中的最值

Math.min()和Math.max()用法相似。

兩個方法用來獲取給定的一組數值中的最大值或最小值,但是卻不接受陣列作為引數。

當然可以寫個函式遍歷比較之類的等等,此處不描述。

有兩個快捷的方法可以接受陣列型別引數:

1 . Math.min.apply(null, arr)

>>>Math.min.apply(null, [2,1,3])
<<<1

唉?不是不能接收陣列型別的引數嗎?這是apply方法的特性,apply方法第二個引數為引數的陣列,明白了吧,雖然我們傳入的是陣列引數,但是apply會將陣列拆分並傳入呼叫的函式。可以說是比較巧的用法了。

2 . Math.min(...[v1, v2...])

>>>Math.min(...[2,1,3])
<<<1

這裡的…(三個點)是ES6中的用法,有興趣的可以去了解一下,低版本的JS並不支援這種用法。

相關推薦

使用Math.max,Math.min獲取陣列

Math.min()和Math.max()用法相似。 兩個方法用來獲取給定的一組數值中的最大值或最小值,但是卻不接受陣列作為引數。 當然可以寫個函式遍歷比較之類的等等,此處不描述。 有兩個快捷的方法可以接受陣列型別引數: 1 . Math.min.ap

Javascript獲取陣列大和

1.排序法 首先我們給陣列進行排序,可以按照從小到大的順序來排,排序之後的陣列中第一個和最後一個就是我們想要獲取的最小值和最大值。排序我們會用到陣列的 sort 方法。 var arr = [12,56,25,5,82,51,22]; arr.sort(function

獲取陣列

方法一: //最小值 Array.prototype.min = function() { var min = this[0]; var len = this.length; for (var i = 1; i < len; i++){ if (this[i] < min){

Stack with max and min 查詢堆小數

國外algorithm 課後的一個小quiz:  Create a data structure that efficiently supports the stack operations (pus

Python獲取字典對應的鍵

利用min(dict, key=dict.get)>>> d = {1:1, 2:0, 3:2} {1: 1, 2: 0, 3: 2} >>> min(d, key=d.get) 2利用lambda函式>>> min(d.

獲取陣列

在陣列中獲取最大值之方法一 class ArrayDemo3 { public static void main(String[] args) { int[] arr = {5,8,7,1,2,4,9}; int temp = getMax(arr); System.out.println(

繼續對上一頁的ecah進行 優化,求一個數組的和,獲取陣列的元素,3

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style t

Java陣列--獲取陣列案例

package com.zhangxueliang.demo; public class ArrayTest { public static void main(String[] args)

定義一個數組,獲取陣列

思路 : 我們定義一個數組,再定義一個max變數 用來儲存最大值  ; 再定義一個min變數,用來儲存最小值; 我們遍歷陣列,假如當前值大於max,就把當前值賦值給max; 假如當前值小於min,就把當前值賦值給min; 我們給下示例程式碼: 1 2

Java程式設計基礎筆記 —— 如何獲取陣列元素的

運算元組時,經常需要獲取陣列中元素的最值,下面來學習如何獲取陣列中元素的最大值。 public class GetMax { public static void main(Stri

Java陣列練習(二) 獲取陣列

思路一: 1.獲取最值需要進行比較,每一次比較都會有一個較大的值,因為該值的不確定性,通過一個變數進行臨時儲存。 2.讓陣列中的每一個元素都和這個變數中的值進行比較,如果大於變數中的值,就用該變數記錄較大值。 3.當所有的元素都比較完成,那麼該變數中的儲存就是陣列中

Js獲取陣列

方法一:在陣列的原型上加方法 //最小值 Array.prototype.min = function() { var min = this[0]; var len = this.length; for (var i = 1;

js獲取陣列函式

在相關頁面引入這個函式,傳遞引數arr(陣列)和引數param(值為'max'或'min'),即可返回相應的結果. 使用示例程式碼: var arr=[10,34,9,5]; document.write(getMaxMin(arr,'max')); 函式程式碼如下:

(java)leetcode852 山脈陣列的封頂索引(二分查詢法找出陣列的下標)(Peak Index in a Mountain Array)

題目描述: 我們把符合下列屬性的陣列 A 稱作山脈: A.length >= 3 存在 0 < i < A.length - 1 使得A[0] < A[1] < ... A[i-1] < A

能返回一個環形陣列大子陣列的和的小程式

要求: 1.輸入一個整形陣列,數組裡有正數也有負數。 2.陣列中連續的一個或多個整陣列成一個子陣列,每個子陣列都有一個和。 3.求所有子陣列的和的最大值。 思路: 做個專案時,我的想法是基於之前做的“能返回一個整陣列中最大子陣列的和”專案之上,它已經有能找出一個數組中最大子陣列的功能,那麼我要解決的

返回整數陣列大子陣列陣列首尾相連)

應王老師要求,返回子陣列的作業又來啦!這次的陣列是首尾相連的 預計時間:兩小時 實際時間:週四上課15分鐘+週日13:20-14:30 先說一下我的想法,之前的作業都是可以直接遍歷整個陣列,因為陣列的長度是一定的,迴圈結束後就可以獲得到所有子陣列。但是這次作業的前提是陣列首尾相連,遍歷整個陣列是無法結束

返回一個整數陣列大子陣列的和(迴圈)。

要求:輸入一個整形陣列,數組裡有正數也有負數。陣列中連續的一個或多個整陣列成一個子陣列,每個子陣列都有一個和。如果陣列A[0]……A[j-1]首尾相鄰,允許A[i-1], …… A[n-1], A[0]……A[j-1]之和最大。同時返回最大子陣列的位置。求所有子陣列的和的最大值。 思路:在上次實驗的基礎上,

返回一個整數迴圈陣列大子陣列的和

要求:        輸入一個整形陣列,數組裡有整數也有負數。        陣列中連續的一個或多個整陣列成一個子陣列,每個子陣列都有一個和。       &nbs

題目:返回一個整數陣列大子陣列的和。

要求 1 要求程式必須能處理1000 個元素; 2 每個元素是int32 型別的; 3 輸入一個整形陣列,數組裡有正數也有負數。 4 陣列中連續的一個或多個整陣列成一個子陣列,每個子陣列都有一個和。 5 如果陣列A[0]……A[j-1]首尾相鄰

返回一個首尾相連的整數陣列大子陣列的和數

設計思路:只要找到從A[0]開始和最大的一段(A[0]…..A[j])(0 <= j < n) 以及以A[n-1]結尾的和最大的一段(A[i]…..A[n-1])(0 <= i < n) 該種情況的最大值為A[i]+…..+A[n-1]+A[0]+….+A[j] 如果i <