JavaScript 在数组中找到最大元素的程序
在本文中,我们将学习如何在JavaScript中找到数组中的最大元素。数组是存储在连续内存位置的一组项目。我们必须找到数组中的最大元素。我们可以通过执行多种方法来实现这一目标。
示例:
输入: arr = [10, 20, 4]
输出: 20
解释: 在10、20和4中,20是最大的。
输入 : arr = [20, 10, 20, 4, 100]
输出 : 100
以下是我们在JavaScript中找到数组中最大元素的几种方法:
- 使用暴力方法
- 使用Math.max()和apply()方法
- 使用reduce()方法
- 使用sort()方法
- 使用递归
JavaScript程序:使用暴力方法找到数组中的最大元素
- 创建一个局部变量 max 并将其初始化为 arr[0] 以存储列表中的最大值
- 初始化一个整数 i = 0 并重复步骤3到5,直到 i 达到数组的末尾。
- 将arr[i]与 max 进行比较。
- 如果arr[i] > max,则更新 max = arr[i] 。
- 增加 i 一次。
- 迭代结束后,将 max 作为所需答案返回。
例子:
JavaScript
// JavaScript program to find
// maximum in arr[] of size n
function largest(arr) {
let i;
// Initialize maximum element
let max = arr[0];
// Traverse array elements
// from second and compare
// every element with current max
for (i = 1; i < arr.length; i++) {
if (arr[i] > max)
max = arr[i];
}
return max;
}
// Driver code
let arr = [22, 65, 1, 39];
console.log("Largest in given array is " + largest(arr));
输出
Largest in given array is 65
Javascript程序寻找数组中最大元素 使用Math.max()和apply()方法
JavaScript Math.max() 方法用于返回零个或多个数字中的最大值。如果未传递任何参数,则结果为“-Infinity”,如果至少有一个参数无法转换为数字,则结果为NaN。 apply()
函数允许您将一个参数数组传递给Math.max()
函数。
语法:
Math.max(value1, value2, ...)
例子:
Javascript
function LargestElement(arr) {
if (arr.length === 0) {
console.log("Array is empty");
}
return Math.max.apply(null, arr);
}
const arr = [22, 65, 1, 39];
console.log("Largest in given array is " + LargestElement(arr));
输出
Largest in given array is 65
使用reduce()方法的JavaScript程序在数组中查找最大元素
在JavaScript中,arr.reduce()方法用于将数组缩减为一个单一的值,并对数组的每个值(从左到右)执行提供的函数,函数的返回值存储在一个累加器中。
语法:
array.reduce( function(total, currentValue, currentIndex, arr),
initialValue )
示例:
Javascript
function LargestElement(arr) {
if (arr.length === 0) {
console.log("Array is empty");
}
return arr.reduce(function (a, b) {
return (a > b) ? a : b});
}
const arr = [22, 65, 1, 39];
console.log("Largest in given array is " + LargestElement(arr));
输出
Largest in given array is 65
JavaScript程序:查找数组中最大的元素
使用sort()方法
JavaScript中的 array.sort() 是一种内置方法,用于对数组进行排序。数组可以是任何类型的,例如字符串、数字、字符等。这里的数组是要排序的值的集合。
语法:
array.sort()
示例:
Javascript
function LargestElement(arr) {
if (arr.length === 0) {
console.log("Array is empty");
}
arr.sort((a, b) => b - a);
return arr[0];
}
const arr = [22, 65, 1, 39];
console.log("Largest in given array is " + LargestElement(arr));
结果
Largest in given array is 65
使用递归方法在数组中查找最大元素的JavaScript程序
- 创建一个递归函数。
- 设定一个整数i = 0,表示当前正在搜索的索引。
- 返回步骤4至7以获得最终答案。
- 如果i是最后一个索引,返回arr[i]。
- 递增i并为新的i值调用递归函数。
- 将递归函数返回的最大值与arr[i]进行比较。
- 返回当前递归调用的这两者之间的最大值。
示例:
JavaScript
// JS program to find maximum
// in arr[] of size n
function largest(arr, n, i) {
// last index
// return the element
if (i == n - 1) {
return arr[i];
}
// find the maximum from rest of the array
let recMax = largest(arr, n, i + 1);
// compare with i-th element and return
return Math.max(recMax, arr[i]);
}
// Driver Code
const arr = [22, 65, 1, 39];
const n = arr.length;
console.log("Largest in given array is", largest(arr, n, 0));
输出
Largest in given array is 65