Spe*_*ral 8 c++ collections stl std duplicates
我需要有一组有序的值而不重复.那么,什么是快速/最佳方法:
1 - 创建一个向量,对其进行排序并删除重复项?2 - 使用一种"排序"向量(如果存在)?
哪一个可以更有效?
如果你要加载一次列表然后多次使用它,那么使用std :: vector而不是std :: set可能会更有效地使用内存并迭代它.
如果你要不断添加和删除元素,你一定要使用std :: set.
对于通用目的,使用std :: set,因为它的工作量较少(构建向量需要在完成附加所有元素后对其进行排序和删除),除非您特别需要低内存使用或其他一些方面的效率性能命中,表示向量是必需的.