gpt4 book ai didi

c++ - 特定区间的有效搜索

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:34:30 26 4
gpt4 key购买 nike

假设我们有一个 double 值(x),我们需要从下面找到它属于哪个区间并返回相应的值:

enter image description here

我想知道最有效的方法是什么。
我需要多次调用此函数。可以将这些值保存在一个集合中并进行二分查找,或者只是通过 if/else 语句检查?

提前致谢。

最佳答案

您可以为此使用 std::map:

std::map<double, double> valueMap;
valueMap[1.0e-5] = 1.0;
valueMap[1.0e-4] = 10.0;
valueMap[1.0e-3] = 100.0;
...
// To get a value from your map, use lower_bound:
double result = *valueMap.lower_bound(5.0e-4); //This will return 1.0
double result2 = *valueMap.lower_bound(5.0e-3); //This will return 10.0

关于c++ - 特定区间的有效搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24446342/

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