How would you obtain the min and max of a two-dimensional array using LINQ? And to be clear, I mean the min/max of the all items in the array (not the min/max of a particular di
Since Array implements IEnumerable
you can just do this:
var arr = new int[2, 2] {{1,2}, {3, 4}};
int max = arr.Cast<int>().Max(); //or Min
You could implement a List<List<type>>
and find the min and max in a foreach
loop, and store it to a List
. Then you can easily find the Min()
and Max()
from that list of all the values in a single-dimensional list.
That is the first thing that comes to mind, I am curious of this myself and am gonna see if google can grab a more clean cut approach.
This seems to work:
IEnumerable<int> allValues = myArray.Cast<int>();
int min = allValues.Min();
int max = allValues.Max();
here is variant:
var maxarr = (from int v in aarray select v).Max();
where aarray is int[,]