本週主要是講解了容器list的使用函數
List是一種可在常數時間內在任何位置執行插入和刪除操做的順序容器。list是雙向鏈表,其迭代器是雙向的。與其餘順序容器(array, vector, deque)相比,list容器在任意位置執行插入、提取、和移動元素的操做更高效,但它不能經過在容器中的位置直接獲取元素。排序
list主要擁有這些功能rem
c.rbegin() 返回逆向鏈表的第一個元素,即c鏈表的最後一個數據。回調函數
c.rend() 返回逆向鏈表的最後一個元素的下一個位置,即c鏈表的第一個數據再往前的位置。class
c.front() 返回鏈表c的第一個元素。容器
c.back() 返回鏈表c的最後一個元素。List
c.insert(pos,num) 在pos位置插入元素num。迭代器
c.insert(pos,n,num) 在pos位置插入n個元素num。鏈表
c.insert(pos,beg,end) 在pos位置插入區間爲[beg,end)的元素。數據
c.push_back(num) 在末尾增長一個元素。
c.pop_back() 刪除末尾的元素。
c.push_front(num) 在開始位置增長一個元素。
c.pop_front() 刪除第一個元素。
c1.swap(c2); 將c1和c2交換。
swap(c1,c2); 同上。
c1.merge(c2) 合併2個有序的鏈表並使之有序,重新放到c1裏,釋放c2。
c1.merge(c2,comp) 合併2個有序的鏈表並使之按照自定義規則排序以後重新放到c1中,釋放c2。
remove(num) 刪除鏈表中匹配num的元素。
remove_if(comp) 刪除條件知足的元素,參數爲自定義的回調函數。
c.sort() 將鏈表排序,默認升序
c.sort(comp) 自定義回調函數實現自定義排序