给定一个数据结构规范,例如具有已知复杂性界限的纯功能映射,必须在几种实现之间进行选择。关于如何选择正确的树有一些民间传说,例如红黑树通常被认为更快,但 AVL 树在具有许多查找的工作负载上具有更好的性能。
是否对这些知识(与集合/地图相关)进行了系统的介绍(已发表的论文)?理想情况下,我希望看到对实际软件进行的统计分析。例如,它可能会得出结论,有 N 种典型的地图使用类型,并列出每种类型的输入概率分布。
是否有系统的基准测试可以在不同的输入分布上测试地图和设置性能?
是否有使用自适应算法根据实际使用情况更改表示的实现?