📜  c++ 如果大于 n,则从向量中删除数字 - C++ (1)

📅  最后修改于: 2023-12-03 15:29:52.603000             🧑  作者: Mango

C++ 如果大于 n,则从向量中删除数字

本题主要是介绍如何在 C++ 中删除 vector 中大于 n 的数字。

思路
  1. 对于 vector 中的每个元素,判断是否大于 n。
  2. 如果大于 n,则删除该元素。
  3. 循环直到所有元素都被遍历一遍。
代码实现

以下是代码实现:

#include <iostream>
#include <vector>
using namespace std;

int main() {
    // 创建一个 vector
    vector<int> nums = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

    // 设定一个 n 值
    int n = 5;

    // 遍历 vector
    for (auto it = nums.begin(); it != nums.end();) {
        // 如果元素大于 n,则删除该元素
        if (*it > n) {
            it = nums.erase(it);
        } else {
            it++;
        }
    }

    // 输出修改后的 vector
    for (auto num : nums) {
        cout << num << " ";
    }
    cout << endl;

    return 0;
}

以上代码中,我们创建了一个 vector,并设定了 n 值为 5。然后,我们使用迭代器遍历 vector 中的每个元素,如果元素大于 n,则使用 erase 函数删除该元素;如果小于等于 n,则使用迭代器自增,继续遍历下一个元素。

最后,我们输出修改后的 vector。

总结

本题介绍了如何在 C++ 中删除 vector 中大于 n 的数字。我们通过使用迭代器遍历 vector,并结合 erase 函数实现了该功能。