list容器實質是一個雙向鏈表,list不提供隨機訪問功能,當刪除其中一個元素,指向其餘元素的迭代器依然有效。對於任何位置的元素插入或移除,list永遠是常數時間算法
函數 | 功能 |
list<T> lstT | list採用採用模板類實現,對象的默認構造形式 |
list(beg,end) | 構造函數將[beg, end)區間中的元素拷貝給自己 |
list(n,elem) | 構造函數將n個elem拷貝給自己 |
list(const list &lst) | 拷貝構造函數 |
函數 | 功能 |
push_back(elem) | 在容器尾部加入一個元素 |
pop_back() | 刪除容器中最後一個元素 |
push_front(elem) | 在容器開頭插入一個元素 |
pop_front() | 從容器開頭移除第一個元素 |
insert(pos,elem) | 在pos位置插elem元素的拷貝,返回新數據的位置 |
insert(pos,n,elem) | 在pos位置插入n個elem數據,無返回值 |
insert(pos,beg,end) | 在pos位置插入[beg,end)區間的數據,無返回值 |
clear() | 移除容器的全部數據 |
erase(beg,end) | 刪除[beg,end)區間的數據,返回下一個數據的位置 |
erase(pos) | 刪除pos位置的數據,返回下一個數據的位置 |
remove(elem) | 刪除容器中全部與elem值匹配的元素 |
函數 | 功能 |
size() | 返回容器中元素的個數 |
empty() | 判斷容器是否爲空 |
resize(num) | 從新指定容器的長度爲num,變長則用默認值填充新位置;變短刪除超出元素 |
resize(num, elem) | 從新指定容器的長度爲num,變長則用elem填充新位置;變短刪除超出元素 |
函數 | 功能 |
assign(beg, end) | 將[beg, end)區間中的數據拷貝賦值給自己 |
assign(n, elem) | 將n個elem拷貝賦值給自己 |
list& operator=(const list &lst) | 重載等號操做符 |
swap(lst) | 將lst與自己的元素互換 |
函數 | 功能 |
front() | 返回第一個元素 |
back() | 返回最後一個元素 |
函數 | 功能 |
reverse() | 反轉鏈表:1,2,3,反轉後爲3,2,1 |
sort() | sort爲list的成員函數,而不是STL算法 |