gpt4 book ai didi

c# - 从列表中返回具有最高绝对值的 double 值,而不使返回值成为绝对值

转载 作者:行者123 更新时间:2023-12-05 01:18:31 25 4
gpt4 key购买 nike

除了迭代集合之外,有没有一种方法可以返回具有最高绝对值的集合中的 double 而不使集合中的值实际上是绝对的?

double[] vals = new double[] { 2.3, 1.7, -3.8};

vals.Max(v => Math.Abs(v)); // This returns 3.8 instead of -3.8

最佳答案

要考虑的一种方法:

var max = vals
.OrderByDescending(z => Math.Abs(z))
.FirstOrDefault();

或者,考虑使用 MoreLinq 的 MaxBy .它比我和 Samvel 的解决方案都快,尤其是对于较大的输入集。

var max = vals.MaxBy(z => Math.Abs(z));

关于c# - 从列表中返回具有最高绝对值的 double 值,而不使返回值成为绝对值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44986509/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com