Find highest array value and index in C#
There are many different ways to find the highest array value and index in C#:1) Using Max() and IndexOf() methods
2) Using Lambda Expression of Linq namespace with method Select()
3) By Copying an array into temporary Array using Copy() method, then reverse temporary array, Take element at index 0, and lookup for that value in original array using indexOf() Method.
Using Max() and IndexOf() methods
In below example we are going to useMax()
method which returns the maximum value of all elements, then we do a lookup in the array to find the index of that value using method ToList().IndexOf()
using System;
using System.Linq;
public class Program
{
public static void Main(string[] args)
{
int[] anArray = new[] { 3, 1, 3, 14 };
int maxValue = anArray.Max();
int maxIndex = anArray.ToList().IndexOf(maxValue);
Console.WriteLine("Highest Value is {0}, with index {1}", maxValue, maxIndex);
}
}
Output
Highest Value is 14, with index 3
Using Lambda Expression of Linq namespace with method Select()
In below example we are going to use lambda expression by usingSelect()
method .using System;
using System.Linq;
public class Program
{
public static void Main(string[] args)
{
int[] anArray = new[] { 3, 1, 3, 14 };
var (number, index) = anArray.Select((n, i) => (n, i)).Max();
Console.WriteLine("Highest Value is {0}, with index {1}", maxValue, maxIndex);
}
}
Output
Highest Value is 14, with index 3
Using Reverse() method
In below example we are going to useReverse()
method of a cloned array and use element at index 0 and lookup for that value in initial array using ToList().IndexOf()
method.using System;
using System.Linq;
public class Program
{
public static void Main(string[] args)
{
int[] anArray = new[] { 3, 1, 3, 14 };
int[] tempArray = new int[anArray.Length];
anArray.CopyTo(tempArray, 0);
Array.Reverse(tempArray);
int maxValue = tempArray[0];
int maxIndex = anArray.ToList().IndexOf(maxValue);
Console.WriteLine("Highest Value is {0}, with index {1}", maxValue, maxIndex);
}
}
Output
Highest Value is 14, with index 3