您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在数组中寻找最接近的值

在数组中寻找最接近的值

编辑:调整了下面的查询以转换为使用long算术,以便我们避免溢出问题。

我可能会使用MoreLINQMinBy方法

var nearest = array.MinBy(x => Math.Abs((long) x - targetNumber));

或者您 可以 使用:

var nearest = array.OrderBy(x => Math.Abs((long) x - targetNumber)).First();

…但这将对整个集合进行排序,而您实际上并不需要这些集合。诚然,对于一个 小的 数组来说,这不会有太大的不同……但是,与描述您 实际 要执行的操作相比,它感觉不太正确:根据某些函数找到具有最小值的元素。

请注意,如果数组为空,这两种方法都会失败,因此您应该先检查一下。

其他 2022/1/1 18:23:56 有647人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶