vector

    科技2023-11-10  91

    vector

    1.初始化 ① 初始化一个不定长容器

    vector<int> a;

    ② 初始化一个长度为10的容器

    vector<int> a(10);

    ③ 初始化一个长度为10的容器,每个元素赋值为-1

    vector<int> a(10, -1);

    ④ 把a数组复制到vector内

    int a[2] = {1, 2}; vector<int> f(a, a + 2);

    ⑤ 把vector a复制到vector中

    vector <int> a; a.push_back(1); vector<int> b(a); // 或者取任意长度复制 vector <int> a; a.push_back(1); vector<int> b(a.begin(), a.end());

    2.求长度(时间复杂度为O(1))

    vector<int> a; a.size();

    3.判空(时间复杂度为O(1))

    vector<int> a; a.empty();

    4.清空

    vector<int> a; a.clear();

    5.随机访问

    vector<int> a; a.front(); // 取第一个数 a.back(); // 取最后一个数 a[10]; // 取第11个元素,下标为10

    6.删除元素/插入元素

    vector<int> a; a.push_back(); // 插入一个元素 a.pop_back(); // 删除一个元素 a.insert(a.begin(), k); // 在开头插入数字k

    7.迭代器

    vector<int> a; a.begin(); // 第一个元素的迭代器 a.end(); // 最后一个元素的下一位的迭代器

    8.遍历

    // 1.迭代器遍历 for (vector <int> :: iterator it = a.begin(); it != a.end(); ++it) cout << *it << ends; // 2.下标遍历 for (int i = 0; i < a.size(); ++i) cout << a[i] << ends; // 3. c++方式遍历 for (auto ai: a) cout << ai << ends;

    9.比较运算(vector支持按照字典序进行比较)

    #include <bits/stdc++.h> using namespace std; int main() { vector<int> a(4, 3); vector<int> b(3, 4); cout << (a < b) << endl; return 0; }

    输出

    1
    Processed: 0.012, SQL: 8