C STL常用操作之multiset篇

2021-10-16 12:48:25 字數 1400 閱讀 5600

multiset和set大致上是一樣的,都是集合。

set詳細介紹見:

multiset和set不同的點在於multiset允許存在重複的元素。

我們可以看出,multiset裡面,確實是允許重複元素出現的。

而multiset裡面的erase函式對於指定的key值來說,是刪除所有的等於key值的元素。如上程式中,原始狀態是1、2、2、2、3,但是只執行了一句erase(2)後,剩餘的元素只有1、3了。

multiset<

int> multi;

multi.

insert(2

);multi.

insert(2

);cout << multi.

count(2

);

程式輸出結果是2

我們前面set篇提到,count的返回值只能是1或0(存在或者不存在)。由於multiset允許重複元素的出現,所以count的返回值可能大於1。

multiset

發現問題歡迎指正!

C STL常用操作之vector篇

include 它是一種容器,可以理解為向量 陣列 可以動態申請增加長度的陣列。vector int v1 預設陣列長度為0 vector int v2 4 申請了長度為4的陣列v2 vector int v3 4,5 申請了長度為4的陣列,並且每個位置都賦值為5用at或者類似於陣列 vector ...

C STL常用操作之string篇

include 一種資料型別,類似於字串,但是可以進行一些比字串更方便的操作,在程式設計的時候也是經常用到。string s1 預設為空串 string s2 4 c 長度為4且每個位置的字元均為c cout s1 endl s2 endl getline cin,s1 讀取一整行 cin s2 讀...

C STL常用操作之stack篇

棧也是一種常用的資料結構,其特點是last in first out 後進先出 棧對於某些問題的處理是非常方便的,比如字尾表示式求值 中綴表示式轉化為字尾表示式。逆序輸出未知長度的字串 十進位制轉二進位制。等等 一般使用空腔構造 ss.push 2 將整形資料2壓入到棧ss中 ss.push 5 將...