是否有可能根据另一个向量中的信息从向量中删除某些元素?

Diz*_*eme 0 c++ containers vector

假设我们有向量A和B,它们包含对象而不是原始数据.

B向量将包含有关要从向量A中删除哪些元素的信息.如果可能,我不想依赖索引.

我怀疑在Java中,这可以通过对removeAll的方法调用来完成,其中您将要删除的事物列表作为参数传递.

这可能与C++语言有关吗?

谢谢!

izo*_*ica 5

如果矢量已排序,您可以使用std::set_difference.事实上,你不首先对它们进行排序,在复杂性方面你不能比n ^ 2好.所以我的建议是:对矢量进行排序并使用set_difference.