2016 - 2024

感恩一路有你

C语言中Set与Map容器的简单用法

浏览量:1673 时间:2024-04-18 18:10:08 作者:采采

在C语言的STL库中,Set与Map是常见的容器之一。与vector、list等容器不同,Set与Map能够提供插入、删除、搜索等操作的时间复杂度都是O(log n),具有高效率的特点。Set与Map对于插入的数据能够自动排序,从低到高,区别在于Map可以存储一对数据,并可以使用第一个元素作为索引访问第二个元素。

头文件声明与变量定义

在程序开头需要声明使用set与map的头文件:`include include`。定义变量set s;(set定义变量格式,int为需要插入元素的类型);map salary;(括号<>内需要定义一对元素的类型)。

初始化操作

Set容器可以使用插入操作初始化变量,插入的元素会自动排序:

`(3); (1); (6);`

而Map容器则可以一个一个插入元素:

`salary["pan"] 12; salary["jan"] 6; salary["at"] 117;`

Set容器的遍历访问

使用内嵌的类型iterator遍历Set容器序列:

```cpp

set::iterator itr ();

cout<<"value:";

for (itr (); itr ! s.end(); itr ) {

cout<<*itr<

}

```

Map容器变量的遍历访问

同样可以使用内嵌的类iterator来遍历Map容器序列:

```cpp

for(map::iterator itr (); itr ! salary.end(); itr ) {

cout<first<<" "<second<

}

```

完整代码示例

```cpp

include

include

include

using namespace std;

int main() {

// set

set s;

(3); (1); (6);

cout<<"the size "<<()<

set::iterator itr ();

cout<<"value:"<

for (itr (); itr ! s.end(); itr ) {

cout<<*itr<

}

// map

cout<<"map part"<

map salary;

salary["pan"] 12;

salary["jan"] 6;

salary["at"] 117;

for(map::iterator itr (); itr ! salary.end(); itr ) {

cout<first<<" "<second<

}

return 0;

}

```

通过以上简单操作,我们可以很方便地使用Set与Map容器进行数据的插入、删除和遍历访问,提高了程序的效率与灵活性。

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。