【发布时间】:2014-04-19 16:51:12
【问题描述】:
假设我们有一个像这样的值数组:
[0] = 1.2
[1] = 2.4
[2] = 2.7
[3] = 3.3
etc.
我们想要找到最接近的匹配,使得 f(2.5) = 1。换句话说,搜索“2.5”将产生等于 2.4 的索引,因为这是最接近的匹配
对于小型数组 - 这没什么大不了的,只需从第一个索引循环并比较下一个与上一个的差异。但是对于大型数组,这是一种浪费——因为如果目标值出现在附近,那么从末尾开始会更好。
【问题讨论】:
-
这是否与特定语言有关?如果是这样,请用它标记问题。
-
任何真正支持数组和浮点数的语言:)
-
好的。 @OscarBralo 的一般回答就足够了。
-
坦率地说,事实证明我不需要它,因为线性搜索对我的情况来说已经足够快了,但考虑到此时的支持和缺乏其他响应,我将其标记为正确 :)
标签: arrays performance search