gpt4 book ai didi

algorithm - 如何划分数值曲线

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:20:29 28 4
gpt4 key购买 nike

我有一个构成曲线的值表,我想在(Java 或 C )中使用一个算法来给我每个区间的值

enter image description here

我需要的结果 =>

组 1 => (0,0)(1,1)(2,2)
第 2 组 => (2,2)(3,2)(4,2)
第 3 组 => (4,2)(5,1.25)(6,0.5)
第 4 组 => (6,0.5)(7,0.5)(8,0.5)(9,0.5)
第 4 组 => (9,0.5)(10,1.5)(11,1.5)(12,1.5)

有哪些方法可以得到我向您展示的结果?

而且我需要该算法也适用于这种结构,而不仅仅是串联的线段 enter image description here

最佳答案

您需要的是插值算法。有许多具有不同的属性,很难说哪一个适合您。

基本上他们都接受了你的观点,并能够在两者之间提出合理的值(value)。

最简单的是线性插值。给定 x1,y1 和 x2,y2 之间的点 x,y 你有 y = (x-x1)/(x2-x1) * y1 + (x2-x)/(x2-x1) * y2 所以如果你选择一个 x 你可以计算出 y。这将为您提供直线段。

如果这对您的应用来说太简单了,请查看一些曲线函数。贝塞尔曲线在很多情况下都是首选,因为它速度快,而且曲线依赖于有限数量的相邻点。参见 wikipedia .

也就是说,请记住,所有这些都是近似值,并且有很多假设,因此不太可能有一个与基本事实完全匹配的假设。

关于algorithm - 如何划分数值曲线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34896680/

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