## How do I find the max in an Array using only math algorithms, specifically I am trying to knock out the lowest number each time

The goal is to get the highest value in an array. I hope someone could walk me through where I went wrong with my code, and how I can get it to work.

What I am trying to accomplish is starting with a preset array, comparing `Arr[i]`

and `Arr[i+1]`

, then `Arr[i+1]`

and `Arr[i+2]`

and so on... pushing the highest value of each into an empty array called `Arrl`

. Then set Arr equal to `Arrl`

. Then calling the function back, and repeating until only `Arr[0]`

is left and display the result.

This is the code I have so far:

var Arr=[10,56,76,98,82,45,98]; function largernumber(Arr){ var Arrl=[]; while (Arr.length>1); for (i=0; i<Arr.length; i++){ if(Arr[i]>Arr[i+1] || Arr[i]===Arr[i+1]){ Arrl.push(Arr[i]); } else{ ArrL.push(Arr[i+1]); } console.log(Arrl); } for(var ar=0 ; ar<Arrl.length ; ar++){ Arr[ar]=Arrl[ar]; } return largernummber(Arr); }

I am not great at describing so I will try to show what my plan is.
`var Arr=[10,56,76,98,82,45,98]`

(after each pass through the array length will decrease by one)

1st pass-through
`var Arr=[60,76,98,98,82,98]`

2nd
`var Arr=[76,98,98,98,98]`

3rd
`var Arr=[98,98,98,98]`

nth..
`var Arr=[98]`

Currently my logic is so flawed, its freezing the browser. oops... if possible I'd also love to see where I can place the console log to see each iteration.

While all the other answers have pointed out perfectly correct and actually simpler solutions to your problem, I'm just "fixing" your code to use the algorithm that you've mentioned. I've avoided any changes to your code that are unnecessary.

Aside from typos in variable names, these are the issues with the code as it is:

`while (Arr.length > 1);`

just loops forever. I assume it was an attempt to find the base case of the recursion. It should be`if (Arr.length === 1) return Arr[0];`

, which says "if there is only one element left, that is the largest and return it".- When accessing
`i + 1`

th element in an array, always be careful about accessing the last element. In your case, your loop goes till`i < Arr.length`

and`i + 1 === Arr.length`

for the last iteration which results in`undefined`

. Comparing numbers with`undefined`

won't work. So make sure you loop till the last but one element, using`Arr.length - 1`

. - Finally, you don't actually use the newly created array for the next leg of the recursion. You need to change
`return largernumber(Arr);`

to`return largernumber(Arrl);`

var Arr = [10, 56, 76, 98, 82, 45, 98]; function largernumber(Arr) { var Arrl = []; if (Arr.length === 1) { return Arr[0] }; for (i = 0; i < Arr.length - 1; i++) { if (Arr[i] > Arr[i + 1] || Arr[i] === Arr[i + 1]) { Arrl.push(Arr[i]); } else { Arrl.push(Arr[i + 1]); } } for (var ar = 0; ar < Arrl.length; ar++) { Arr[ar] = Arrl[ar]; } return largernumber(Arrl); } console.log(largernumber(Arr));

**Maximum and minimum of an array using minimum number of ,** You program should make minimum number of comparisons. Starting from 3rd, compare each element with max and min, and change max and min accordingly ( i.e., /*If there is only one element then return it as min and max both*/ Time Complexity: O(n) Algorithmic Paradigm: Divide and Conquer. Given an array of integers find the maximum and minimum elements by using minimum comparisons. Naive Solution. We can simply iterate through the array and compare twice to each element to get min and max. This leads to 2n comparisons.

Just use Math.max(). Given a list of values it returns the max value.

var Arr=[10,56,76,98,82,45,98]; console.log(Math.max(...Arr))

**Find the maximum element in an array which is first increasing and ,** Given an array of integers which is initially increasing and then We can traverse the array and keep track of maximum and element. Time Complexity : O(n) We can modify the standard Binary Search algorithm for the given type of arrays. Base Case: Only one element is present in arr[low..high]*/. Now I cannot make out the exact number of comparisons in terms of N (the number of elements in the array). But it's hard to see how one can go below this many comparisons. UPDATE: We can work out the number of comparisons like below: At the bottom of this tree of computations, we form pairs of integers from the original array. So we have N / 2

There are several alternatives. The following code snippet uses the function `reduce`

and thru a `Math.max`

you can check for the greatest value.

let arr = [10, 56, 76, 98, 82, 45, 98]; let max = arr.reduce((a, n) => Math.max(a, n), Number.MIN_SAFE_INTEGER); console.log(max);

**Running time of binary search (article),** Let's see how to analyze the maximum number of guesses that binary search makes. Once the reasonable portion contains just one element, no further guesses If you said that the first guess would eliminate at least 8 elements, so that at Every time we double the size of the array, we need at most one more guess. using the reduce() method; using Math.max() The Algorithm Challenge Description Return an array consisting of the largest number from each provided sub-array. For simplicity, the provided array will contain exactly 4 sub-arrays. Remember, you can iterate through an array with a simple for loop, and access each member with array syntax arr[i].

**Array to value python,** array to value python empty((3,2)) Create an empty array Array Mathematics To create a one-dimensional array of zeros, pass the number of elements as the any element in an array--not true for a stack, since you can only deal with the most popular programming language, for the first time knocking Java out of the top� Write a program to convert string to number without using Integer.parseInt() method. Write a program to find two lines with max characters in descending order. Write a program to find the sum of the first 1000 prime numbers. Find longest substring without repeating characters. Write a program to remove duplicates from sorted array.

If what you are trying to do is getting the maximum number in the provided array then you can simply use `Math.max()`

function for that. See below:

const Arr = [10, 56, 76, 98, 82, 45, 98]; const max = Math.max.apply(null, Arr) console.log(max)

**The Fastest Way to Find Minimum and Maximum Values in an Array ,** Sometimes, given an array of numbers in JavaScript, the smallest or largest In this article, I explain how each method works, then I compare the performance of 5 The built-in Math functions Math.min() and Math.max() do exactly However, don't throw the spread operator out just quite yet — there is no� You can find the minimum and maximum values of an array using for loops −ExampleLive Demopublic class MinAndMax { public int max(int [] array) {

Check for the size of the array; If odd, initialize min and max to the first element; If even, compare the elements and set min to the smaller value and max to the bigger value; 3. Traverse the array in pairs. 4. For each pair, compare the two elements and then. Compare the bigger element with max, update max if required.

One such utility, to find maximum and minimum element in array is explained in this article using “aslist()“. aslist() type casts a list from the array passed in its argument. This function is defined in “Java.utils.Arrays“. To get the minimum or maximum value from the array we can use the Collections.min() and Collections.max() methods.

•An array variable is an ordered collection of scalar variables all of the same type • Dimensions – Each array has a certain number of dimensions, a vector has 1 dimension, a matrix 2 dimensions • Modelica arrays are “ rectangular”, i.e., all rows in a matrix have equal length, and all columns have equal length

##### Comments

- Your code is freezing because once you start the
`largernummber()`

function you never get out of it. It just 'recures' - returning itself again and again. - Thanks for editing the code! Couldn't figure out how. I am seeing the recurring now thanks!, Think my issue now is, I cannot figure out how to replace the current Arr with the new values. it seems that each iteration just resets the Arr back to its original values.
- Thank you so much! This was exactly what I was going for! I was losing my mind over this and ended up using 5 "for" to get to the result haha. The comments are also greatly appreciated! Definitely learned from this experience!