1.
集合set。定義:
sets1; 型別可選。
se.begin() 返回指向第乙個元素的迭代器
se.clear() 清除所有元素 //常用
se.count() 返回某個值元素的個數 //常用,一般用來查這個元素在不在集合中
se.empty() 如果集合為空,返回true
se.end() 返回指向最後乙個元素之後的迭代器,不是最後乙個元素
se.erase() 刪除集合中的元素 //常用
se.find() 返回乙個指向被查詢到元素的迭代器
se.insert() 在集合中插入元素 //常用
se.max_size() 返回集合能容納的元素的最大限值
se.size() 集合中元素的數目
se.swap() 交換兩個集合變數
遍歷用到迭代器。
for (set::iterator it = s.begin(); it != s.end(); ++it) {
cout << *it << endl;
2.map
定義 map< string , int > m;
以乙個string形式的變數指向乙個int型的變數(個人理解)
mapaaa;
aaa [ b ] =a;
3.queue的用法
queuea;
a.push push即在隊尾插入乙個元素
a.pop 將佇列中最靠前位置的元素拿掉,是沒有返回值的void函式
a.size 返回佇列中元素的個數,返回值型別為unsigned int
a.empty 判斷佇列是否為空的,如果為空則返回true
a.front 返回值為佇列中的第乙個元素,也就是最早、最先進入佇列的元素。注意這裡只是返回最早進入的元素,並沒有把它剔除出佇列。
a.back 返回佇列中最後乙個元素,也就是最晚進去的元素。
4.vector
vec.begin()//指向迭代器中第乙個元素。
vec.end()//指向迭代器中末端元素的下乙個,指向乙個不存在元素。
vec.push_back(elem) //在尾部加入乙個資料。
vec.pop_back() //刪除最後乙個資料。
vec.capacity() //vector可用空間的大小。
vec.size()//返回容器中資料個數。
vec.empty() //判斷容器是否為空。
vec.front() //傳回第乙個資料。
vec.back() //傳回最後乙個資料,不檢查這個資料是否存在。
vec.at(index) //傳回索引idx所指的資料,如果idx越界,丟擲out_of_range。
vec.clear() //移除容器中所有資料。
vec.erase(iterator) //刪除pos位置的資料,傳回下乙個資料的位置。
vec.insert(position,elem) //在pos位置插入乙個elem拷貝,傳回新資料位置。
vec.insert(position,n,elem) //在pos位置插入n個elem資料,無返回值。
vec.insert(position,begin,end) //在pos位置插入在[beg,end)區間的資料,無返回值。
關於熵的一些理解
對於理工科學生來說,熵 並不是乙個陌生的名詞。在諸如 大學物理 熱力學 和 資訊理論 等課程中都會有所介紹。但同時 熵 又是乙個顯得有點神秘的概念,看不見也摸不著。我最早是在高中物理課中聽說的,大概是在介紹 熱力學第二定律 時提到的。熱力學第二定律的內容是 熱力學過程是不可逆的 孤立系統自發地朝著熱...
關於float的一些理解
float是否脫離文件流,乙個父元素不設定overflow的話,子元素float,就不會把父元素撐開,換句話說,他就不會有高度,但是做個demo 父元素overflow hidden 子元素前兩個float,第三個不float,結果是第三個沒有clear浮動的元素,跟float的元素出現在同乙個位置...
關於android layout的一些理解
1 wrap content view的尺寸根據它的內容確定 match parent view的尺寸盡量和它的parent view group一樣大 2 獲得view的位置 position getleft gettop getright getleft getwidth getwidth 3 ...