对于小型集合,std::vector 几乎肯定是最好的容器,无论对其应用何种操作。是否有可能将 std::vector 作为元素集容器的底层存储而不是涉及大量堆分配的红黑树(也许 boost 有一些东西?)还是我必须自己发明它?
由于性能原因,普通 std::vector 和 std::sort 不是一个选项,并且 std::inplace_merge 容易出现编码错误(迭代器无效等)。
编辑:澄清了问题
最佳答案
无法指定 STL 集的底层结构。充其量您可以编写一个分配器,它使用 vector 来提供 set 使用的内存,这可能是您想要的,也可能不是您想要的。
关于c++ - set 是否有可能将 std::vector 作为存储其元素的底层存储?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3789678/