怎么取出set集合中的值C++
时间: 2023-08-12 20:04:10 浏览: 97
在 C++ 中,可以使用迭代器来遍历 set 集合中的元素,然后取出每个元素的值。以下是一个例子:
```cpp
#include <iostream>
#include <set>
int main() {
std::set<int> myset = {1, 3, 5, 7, 9};
// 遍历 set 集合并输出每个元素的值
for (auto it = myset.begin(); it != myset.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果:
```
1 3 5 7 9
```
在上面的例子中,我们定义了一个 `std::set<int>` 类型的 set 集合 `myset`,然后使用迭代器 `it` 遍历 `myset` 中的所有元素,并使用 `*it` 取出每个元素的值。最后将每个元素的值输出到控制台上。
相关问题
怎么取出set集合中间的值C++
在 C++ 中,可以使用迭代器来遍历 set 集合中的元素,然后使用 `std::advance` 函数将迭代器向前移动到需要的位置,然后取出该位置上的元素的值。以下是一个例子:
```cpp
#include <iostream>
#include <set>
#include <iterator>
int main() {
std::set<int> myset = {1, 3, 5, 7, 9};
// 将迭代器移动到 set 中间位置
auto it = myset.begin();
std::advance(it, myset.size() / 2);
// 输出中间位置元素的值
std::cout << *it << std::endl;
return 0;
}
```
输出结果:
```
5
```
在上面的例子中,我们使用迭代器 `it` 遍历 `myset` 中的所有元素,并使用 `std::advance` 函数将迭代器移动到 `myset` 中间位置。最后使用 `*it` 取出该位置上的元素的值并输出到控制台上。
c++set集合数组查找
C++中的set集合是一种基于红黑树实现的数据结构,它可以自动对元素进行排序,并且不允许重复元素存在。如果想要在set集合中查找某个元素,可以使用find()函数,该函数返回一个迭代器,指向set中第一个等于该元素的位置,如果没有找到,则返回set.end()。下面是一个示例代码:
```
#include <iostream>
#include <set>
using namespace std;
int main() {
set<int> s;
s.insert(1);
s.insert(2);
s.insert(3);
set<int>::iterator it = s.find(2);
if (it != s.end()) {
cout << "Found!" << endl;
} else {
cout << "Not found!" << endl;
}
return 0;
}
```