【发布时间】:2012-08-27 14:19:53
【问题描述】:
我有一个 3d 数组 double[,,] numbers = new double[x,y,z];,现在如果将 3d 数组想象成一个带有数字的立方体,我需要找到沿所有三个方向的每个切片的最小值和最大值。
通过简单的循环当然很容易做到,但是C#有什么函数可以找到切片中的最小值和最大值吗?
为了进一步解释,也许这个“不真实”的代码会有所帮助:
int i;
double[] xmin = new double[x];
double[] xmax = new double[x];
double[] ymin = new double[y];
double[] ymax = new double[y];
double[] zmin = new double[z];
double[] zmax = new double[z];
for(i = 0; i < x; i++)
{
MinOf(numbers[i, y, z]) = xmin[i];
MaxOf(numbers[i, y, z]) = xmax[i];
}
for(i = 0; i < y; i++)
{
MinOf(numbers[x, i, z]) = ymin[i];
MaxOf(numbers[x, i, z]) = ymax[i];
}
for(i = 0; i < z; i++)
{
MinOf(numbers[x, y, i]) = zmin[i];
MaxOf(numbers[x, y, i]) = zmax[i];
}
希望有人可以帮助我。 干杯,菲尔13131
【问题讨论】:
-
OT:只需在每个循环中声明
i。 -
C# 根本不支持“切片”。所以你必须在这里循环。
标签: c# max min multidimensional-array