关于自适应梯形细分(请参阅this和this),我需要解决一个评估f(x)
需要花费大量时间的问题,所以我需要尽可能少地这样做。
于是我找到了这个答案:https://stackoverflow.com/a/29837372/261010
不是单独考虑每个子区间中的错误,而是更高级的代码计算所有子间隔上的总错误并进行细化,直到总误差低于所需的阈值为止。根据子区间对总误差的贡献选择子区间进行细化,首先细化较大的误差。通常,优先级队列用于快速选择用于细化的子间隔。
这到底是什么意思?优先级队列在这种情况下有什么帮助?有多少子间隔可以被认为是“更大的”?
发布于 2020-08-29 09:08:29
优先级队列不用于计算每个间隔中的错误。相反,它用于跟踪当前错误最大的时间间隔,因此该算法可以对其进行改进。这种带有优先级队列的模式用于许多所谓的“贪婪”算法,如Dijkstra搜索和Prim算法。
https://stackoverflow.com/questions/63644913
复制相似问题