首页 > 试题广场 >

#includeusing&nb...

[单选题]
#include <iostream>
#include <vector>
#include <set>
using namespace std;

int main() {
    int n = 5;
    vector<int> a;
    set<int> b;
    for (int i = 1; i <= n; ++i) {
        a.push_back(i);
        b.insert(i);
    }
    for (int i = 1; i <= n; ++i) {
        a.push_back(i);
        b.insert(i);
    }
    cout << a.size() << b.size() << endl;
    return 0;
}
程序的输出为()
  • 105
  • 510
  • 1010
  • 55
vector容器会不断插入的;set容器会对***来的元素进行判断,如果重复了就不再插入容器内部。所以vector  a两次5循环共有10个元素;而set b只是保留第一次循环的元素,第二次循环重复了, 不再插入容器内部。
发表于 2020-08-16 10:00:54 回复(1)
vector容器是普通序列容器,允许数据重复,插入的个数为10
set是一个hash表,不允许数据重复,只记录5个数字,为5
编辑于 2024-03-21 19:58:10 回复(0)