.net - C# 数组 : finding custom minimal element

标签 .net arrays min

在数组中查找最小元素时,如何指定自定义代码进行比较?

例如,我有两个数组:

int[] a = new int[] {3, 6, 8};
int[] b = new int[] {9, -2, 5};

我想弄清楚,元素与相应索引的最小比率是多少(即找到 3/96/(-2) 的最小值和 8/5),然后返回索引。我已经知道 Array.Min(),但我想知道是否可以对其进行任何类型的定制。

最佳答案

也许是这样的:

double smallest = double.MaxValue;
int smallestIndex = 0;

for (int i = 0; i < (a.Length > b.Length ? b.Length : a.Length); i++)
{
    if ((double)a[i] / b[i] < smallest)
    {
        smallest = (double)a[i] / b[i];
        smallestIndex = i;
    }
}

smallestIndex 将包含末尾最小比率的索引。

关于.net - C# 数组 : finding custom minimal element,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1807848/

相关文章:

c# - 局部变量实际上在 CLR 中分配在哪里?

python - 在 Python 中返回多维的最小值/最大值?

mysql - 在考虑地区的同时将门牌号聚合到 MIN 和 MAX

c - 数组操作(插入元素)

c - 维度大于 3 的数组地址

c++ - 打印字符数组 C++

MySQL 查询难题 - 找到最近的日期

c# - Entity Framework 事务

c# - 创建谷歌图表并转换为图像服务器端

C#/.Net TryValidateObject - 如何本地化?