如何获取最接近x的列表中的值的索引?

ESR

假设我有一个清单:

$list: 0.67, 1.02, 1.2, 1.4, 1.8, 2

我也有 $x: 1.067

如何获得$list最接近的值的索引$x,我们称其为$y

我已经尝试了一些方法,但是没有一个是可靠的,并且很容易失败,具体取决于列表中的值:

@each $value in $list {
    @if round($value * 10) == round($x * 10) {
        $y: index($list, $value);
    }
}

当然,这很糟糕,因为它只会匹配有点相似的第一个值$x,而不匹配最接近值,并且如果没有数字在的小数点后一位将失败$x

Sass有可能吗?

法法

只需像这样遍历列表:

$list: 0.67, 1.02, 1.2, 1.4, 1.8, 2;
$x: 1.067;
$bestValue: 99999;
$bestIndex: -1;
@for $i from 1 through length($list) {
  $value: abs($x - nth($list, $i));
  @if $value < $bestValue {
    $bestValue: $value;
    $bestIndex: $i;
  }
}
@error $bestIndex;

这是一种常见的模式,您可以定义“最佳索引”和“最佳值”(最初带有一些非常不好的数字),然后在列表中进行一次迭代。对于每个元素,请检查其值是否为“更好”。如果是这样,则更新值和索引。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

获取数组中最接近 x 的值的索引

通过列表/向量中的索引选择最接近的x元素

返回与列表中给定值最接近的项目及其索引

从整数列表中,获取最接近给定值的数字

从整数列表中,获取最接近给定值的数字

如何获取最接近的选定下拉列表值在jQuery中?

如何从numpy中的列表中裁剪到最接近的值?

如何从列表中获取最接近给定目标的向量

如何在SQL中获取最接近请求参数的值?

从日期列表中获取最接近的日期?

从列表中获取最接近的日期时间

从字典列表中获取最接近的元素

如何获得列表中最接近的值?

从字典中获取最接近的可用值

如何从谁的值最接近零的列表中找到两个索引

在未完全排序的列表中查找最接近值的项目的索引

使用C#通过求和或精确单个值从列表中获取最接近的值

从 pd DataFrame 获取最接近的日期时间索引值

获取列表中某个给定数字的 3 个最接近的值?

查找R中数组中彼此最接近的x的索引

如何从列表中选择值最接近 Ansible 中的另一个值的项目

在python列表列表中搜索最接近的值

查找最接近的值并在Python中返回数组的索引

如何在Pandas Dataframe中获取最接近另一个值的值

优化在值列表中查找最接近的值

如何使用lapply在R中的列表中查找最接近的值?

在R中的列表中查找最接近的值

如何找到给定点的最接近点(在不同点列表中的点为(x,y))?

从元组列表中获取最接近的匹配元组(仅较低)