成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

C語言中Set與Map容器的簡單用法

在C語言的STL庫中,Set與Map是常見的容器之一。與vector、list等容器不同,Set與Map能夠提供插入、刪除、搜索等操作的時(shí)間復(fù)雜度都是O(log n),具有高效率的特點(diǎn)。Set與Map

在C語言的STL庫中,Set與Map是常見的容器之一。與vector、list等容器不同,Set與Map能夠提供插入、刪除、搜索等操作的時(shí)間復(fù)雜度都是O(log n),具有高效率的特點(diǎn)。Set與Map對于插入的數(shù)據(jù)能夠自動(dòng)排序,從低到高,區(qū)別在于Map可以存儲(chǔ)一對數(shù)據(jù),并可以使用第一個(gè)元素作為索引訪問第二個(gè)元素。

頭文件聲明與變量定義

在程序開頭需要聲明使用set與map的頭文件:`include include`。定義變量set s;(set定義變量格式,int為需要插入元素的類型);map salary;(括號<>內(nèi)需要定義一對元素的類型)。

初始化操作

Set容器可以使用插入操作初始化變量,插入的元素會(huì)自動(dòng)排序:

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

而Map容器則可以一個(gè)一個(gè)插入元素:

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

Set容器的遍歷訪問

使用內(nèi)嵌的類型iterator遍歷Set容器序列:

```cpp

set::iterator itr ();

cout<<"value:";

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

cout<<*itr<

}

```

Map容器變量的遍歷訪問

同樣可以使用內(nèi)嵌的類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容器進(jìn)行數(shù)據(jù)的插入、刪除和遍歷訪問,提高了程序的效率與靈活性。

標(biāo)簽: