STL 的 vector 根据元素的值来删除元素的方法
vector 的 erase( ) 只能删除迭代器,所以要想删某种值的元素,需要这样:
假设有一个 vector 叫 vt ,则 vt.erase( remove( vt.begin() , vt.end() , k ) , vt.end() ) 就可以删掉值为 k 的元素。
更具体的,参考这里:https://blog.csdn.net/vbanglev/article/details/1512521
根据 remove 的行为来看,调用它的时间应该是线性的。