vector的相关操作

发布时间 2023-07-12 15:01:12作者: luck_god
  • 插入元素:可以使用insert()函数在指定位置插入一个或多个元素。可以通过指定插入位置的迭代器和插入元素的值或范围来进行插入操作。例如:
cpp
  • std::vector<int> v = {1, 2, 3, 4, 5}; v.insert(v.begin() + 2, 10); // 在第三个位置插入元素 v.insert(v.begin() + 3, 3, 7); // 在第四个位置插入3个值为7的元素
  • 清空向量:可以使用clear()函数删除向量中的所有元素,使其变为空向量。例如:

    cpp
  • std::vector<int> v = {1, 2, 3, 4, 5}; v.clear(); // 清空向量
  • 替换元素:可以使用[]运算符或at()函数直接访问指定位置的元素,并进行赋值操作来替换元素。例如:

    cpp
  • std::vector<int> v = {1, 2, 3, 4, 5}; v[2] = 10; // 将索引为2的元素替换为10 v.at(4) = 20; // 将索引为4的元素替换为20
  • 排序向量:可以使用std::sort()函数对向量中的元素进行升序排序。例如:

    cpp
  • std::vector<int> v = {5, 3, 1, 4, 2}; std::sort(v.begin(), v.end()); // 对向量中的元素进行排序
  • 反转向量:可以使用std::reverse()函数将向量中的元素反转顺序。例如:

    cpp
std::vector<int> v = {1, 2, 3, 4, 5}; std::reverse(v.begin(), v.end()); // 反转向量中的元素
 
  • 创建向量:可以使用默认构造函数创建一个空的向量,或者使用带有初始元素的构造函数创建一个具有初始值的向量。例如:
cpp
  • std::vector<int> v1; // 创建一个空的整数向量 std::vector<int> v2(5); // 创建一个具有5个默认初始化值的整数向量 std::vector<int> v3 = {1, 2, 3, 4, 5}; // 创建一个具有初始值的整数向量
  • 添加和访问元素:可以使用push_back()函数向向量的末尾添加一个元素,使用[]运算符或at()函数访问指定位置的元素。例如:

    cpp
  • std::vector<int> v; v.push_back(10); // 向向量末尾添加一个元素 v.push_back(20); int firstElement = v[0]; // 访问第一个元素 int secondElement = v.at(1); // 访问第二个元素
  • 删除元素:可以使用pop_back()函数删除向量的最后一个元素,使用erase()函数删除指定位置的元素。例如:

    cpp
  • std::vector<int> v = {1, 2, 3, 4, 5}; v.pop_back(); // 删除最后一个元素 v.erase(v.begin() + 2); // 删除第三个元素
  • 获取向量大小:可以使用size()函数获取向量中元素的个数。例如:

    cpp
  • std::vector<int> v = {1, 2, 3, 4, 5}; int size = v.size(); // 获取向量的大小,即元素个数
  • 遍历向量:可以使用循环结构(如for循环或范围for循环)遍历向量中的元素。例如:

    cpp
std::vector<int> v = {1, 2, 3, 4, 5};
for (int i = 0; i < v.size(); i++) {
    std::cout << v[i] << " "; // 输出每个元素
}
std::cout << std::endl;

// 或者使用范围for循环
for (int element : v) {
    std::cout << element << " "; // 输出每个元素
}
std::cout << std::endl;
front()函数用于获取向量的第一个元素,即索引为0的元素。它返回一个对元素的引用。