温馨提示×

C++ set遍历和vector遍历比较

c++
小樊
107
2024-07-09 00:35:25
栏目: 编程语言

在C++中,set和vector是两种不同的容器类型,它们在存储元素和遍历方式上有一些不同之处。

  1. 遍历set:
#include <iostream>
#include <set>

int main() {
    std::set<int> mySet = {1, 2, 3, 4, 5};

    for (const auto& elem : mySet) {
        std::cout << elem << " ";
    }

    return 0;
}

在set中,元素是按照自然顺序进行排序的,并且不允许重复元素。因此,在遍历set时,元素是按照升序顺序输出的。

  1. 遍历vector:
#include <iostream>
#include <vector>

int main() {
    std::vector<int> myVector = {1, 2, 3, 4, 5};

    for (const auto& elem : myVector) {
        std::cout << elem << " ";
    }

    return 0;
}

在vector中,元素是按照插入顺序进行存储的,并且允许重复元素。因此,在遍历vector时,元素是按照插入顺序输出的。

总的来说,set适用于需要保持有序且不重复的元素集合,而vector适用于需要按照插入顺序存储元素的情况。遍历set时会按照元素的自然顺序输出,而遍历vector时会按照插入顺序输出。

0