set 不能用來計數,只能用來判斷是否存在這個string。
#include setstr;
#新增數值
str.insert(str_new);
#set 預設是從小到大排序
#兩個int插入用法,按照第乙個數值排序。
set> s;
#訪問第乙個值
s.begin()
#如果是雙int
int start,end;
start=(*s.begin()).first;
end=(*s.begin()).second;
#訪問最後乙個;
set>::iterator iter;
iter=s.end();
iter--;
#注意 不能用s.end()--,會出現錯誤,必須分開操作
使用set 可以很好的建立字串陣列;
這是他的方法:
1. begin()--返回指向第乙個元素的迭代器
2. clear()--清除所有元素
3. count()--返回某個值元素的個數
4. empty()--如果集合為空,返回true
5. end()--返回指向最後乙個元素的迭代器
6. equal_range()--返回集合中與給定值相等的上下限的兩個迭代器
7. erase()--刪除集合中的元素
8. find()--返回乙個指向被查詢到元素的迭代器
9. get_allocator()--返回集合的分配器
10. insert()--在集合中插入元素
11. lower_bound()--返回指向大於(或等於)某值的第乙個元素的迭代器
12. key_comp()--返回乙個用於元素間值比較的函式
13. max_size()--返回集合能容納的元素的最大限值
14. rbegin()--返回指向集合中最後乙個元素的反向迭代器
15. rend()--返回指向集合中第乙個元素的反向迭代器
16. size()--集合中元素的數目
17. swap()--交換兩個集合變數
18. upper_bound()--返回大於某個值元素的迭代器
19. value_comp()--返回乙個用於比較元素間的值的函式
使用
str.count(ss)
可以判斷是否存在這個字串,來避免重複。
對字串的遍歷:
set::iterator iter=str.begin();
while(iter!=str.end())
// 定義乙個 compare 物件,且內部對運算子 () 進行過載
struct classcomp
};int main(int argc, char* ar**)
cout<<"******************************==="<('f',100) );
mymap.insert(pair('g',200) );
cout<<"f => " it = mymap.begin();
do while ( key_comp((*it++).first, highest) );
cout << endl;
return 0;
}
關於集合的一些知識點
集合 集合,它也是一種陣列,它稱為 動態陣列 特點 宣告集合的時候,不需要指定集合的大小,當空間不夠時,會自動變大 arraylist可以存在重複資料 它儲存的資料是有順序的 採用的佇列的結構進行儲存 先進先出,後進後出 建立語法 arraylistlist new arraylist 這是一種泛型...
一些知識點
字串拼接 1.a join b a為元素之間的分隔符,b為待分割的序列 可用於輸出時的資料處理,元素間有空格,末尾沒有 2 s s s str1,str2,str3 前半部分為字串,後半部分為索引。用於引入,s是物件 3.format str1,str2,str3 與f 括號裡為已有變數 關於for...
一些知識點
1.vector是在堆上還是棧上?在堆上.2.我們發現指標有一些 似是而非 的特徵 1 指標消亡了,並不表示它所指的記憶體會被自動釋放。比如函式中的指標是區域性變數,如果它指向了堆上,而自己出了函式後消亡了,但它所指向的記憶體還是存在的,導致了記憶體洩漏.2 記憶體被釋放了,並不表示指標會消亡或者成...