【发布时间】:2014-06-01 02:23:58
【问题描述】:
我们可以在 C++ 中使用 remove_if 根据对元素进行操作的谓词在线性时间内从向量中删除元素。
bool condition(double d) {...}
vector<double> data = ...
std::remove_if (data.begin(), data.end(), condition);
如果我的情况不是取决于值,而是取决于索引怎么办?换句话说,如果我想删除所有奇数索引元素,或者一些任意索引集等?
bool condition(int index) {//returns whether this index should be removed}
vector<double> data = ...
std::remove_if (data.begin(), data.end(), ???);
【问题讨论】:
标签: c++ vector indexing iterator remove-if