C++需要从数组中删除某些值时,可以使用以下几种方法:
#include <algorithm>
#include <vector>
void removeValues(std::vector<int>& arr, int value) {
arr.erase(std::remove(arr.begin(), arr.end(), value), arr.end());
}
#include <algorithm>
#include <vector>
bool isEven(int num) {
return num % 2 == 0;
}
void removeEvenValues(std::vector<int>& arr) {
arr.erase(std::remove_if(arr.begin(), arr.end(), isEven), arr.end());
}
#include <vector>
void removeValues(std::vector<int>& arr, int value) {
for (int i = 0; i < arr.size(); i++) {
if (arr[i] == value) {
arr[i] = -1; // 标记为无效值
}
}
}
这些方法可以根据具体的需求选择使用。在实际应用中,可以根据数组的大小、删除频率和性能要求来选择最合适的方法。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云