algorithm - 自适应梯形规则及优先队列实现的说明
问题描述
关于自适应梯形细分(参见this和this),我需要解决评估f(x)
需要大量时间的问题,因此我需要尽可能少地执行此操作。
搜索所以我找到了这个答案:https ://stackoverflow.com/a/29837372/261010
更高级的代码不是单独考虑每个子区间中的误差,而是计算所有子区间的总误差并进行细化,直到总误差低于所需阈值。根据对总误差的贡献选择子区间进行细化,首先细化较大的误差。通常,优先级队列用于快速选择子区间进行细化。
这到底是什么意思?在这种情况下,优先级队列有什么帮助?有多少个子区间可以被认为“更大”?
解决方案
优先级队列不用于计算每个间隔中的错误。相反,它用于跟踪当前哪个区间的误差最大,因此算法可以对其进行细化。这种具有优先级队列的模式用于许多所谓的“贪婪”算法,例如 Dijkstra 搜索和 Prim 算法。
推荐阅读
- javascript - 如何将参数从 React 组件传递给事件
- vuejs2 - Visual Studio 中的 Vuejs2 Web 项目 - 401 调用并且没有 iis express
- python - 如何将 Pandas 数据框插入 PostgreSQL 表?
- intellij-idea - 如何在 IntelliJ 中查看多个选项卡?
- bioinformatics - 为什么 minimap2 输出没有对齐数据的 sam 文件?
- sql - 无法执行 .sql 文件 - 错误 1064 (42000)
- javascript - “错误:已有具有此 ID 的源(匿名函数)”是什么意思?(反应,MapboxGL)
- r - 如何在 R 中将我的 excel 读取为字符串?(R 将我的 excel 文件读取为日期格式)
- ios - Testflight beta版调用扫描二维码应用剪辑体验
- python - 当附加到 Pandas DataFrame 中的字典中的列表时,它会附加到列中的所有字典而不是我指向的字典