我有这样的清单List<Double[,]>
。让我们将列表中的每个二维数组称为一个图层。因此,我应该比较每一层中的每个元素并提取最大值。并构造最大值的层。
我怎么做?也许使用LINQ?还是foreach循环构造?
救命!
谢谢!
最佳答案
假设所有图层的大小均sizeX
x sizeY
,因为否则这没有任何意义:
var maxLayer = new Double[sizeX,sizeY];
for( int x = 0; x <= maxLayer.GetUpperBound(0); x++ )
for( int y = 0; y <= maxLayer.GetUpperBound(1); y++ )
maxLayer[x,y] = Double.NegativeInfinity;
foreach( Double[,] layer in list )
for( int x = 0; x <= maxLayer.GetUpperBound(0); x++ )
for( int y = 0; y <= maxLayer.GetUpperBound(1); y++ )
maxLayer[x,y] = Math.Max( maxLayer[x,y], layer[x,y] );
这里没有什么聪明的。
关于c# - 寻找最大问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6259916/