【发布时间】:2023-12-11 18:12:01
【问题描述】:
【问题讨论】:
标签: visual-c++ point curve
【问题讨论】:
标签: visual-c++ point curve
我假设黑色曲线是 x 单调(否则“一个高于另一个”术语可能会模棱两可)。
一种简单的方法是将黑色曲线视为一条折线,并为红色曲线上的每个点p 找到折线上具有相同 x 坐标的点 q。然后绿点是那些p 的y 坐标大于它们对应的q 的点。
找到与给定p 对应的点q 相当于遍历折线的段并识别具有一个端点具有较小x 坐标而另一个端点具有较大的线段。一旦你有了这样一个片段,q 的 y 值就只是一个线性插值。
由于折线是x单调的,所以点的x坐标是排序的。因此,使用对数二分搜索可以有效地完成对相应段的搜索。
【讨论】: