#include
using
namespace std;
list是動態鍊錶,跟vector一樣,是個類模板
list<
int>list_int;
//定義了乙個內部元素是int的鍊錶
list<
char
>list_char;
//定義了乙個內部元素是char的鍊錶;
listlist_student;
//定義了乙個內部元素是cstring的鍊錶
list<
char
*>list_pchar;
//定義了乙個內部元素是char*的鍊錶
#include
using
namespace std;
intmain
(int argc,
char
* ar**)
; list<
int>
five
(myints,myints+
sizeof
(myints)
/sizeof
(int))
;//使用乙個普通的int陣列來初始化當前物件
return0;
}
listlist_int;
①list_int.size(
); //返回list鍊錶元素的總個數
②list_int.front(
); //返回list_int鍊錶的第乙個元素的值
③list_int.back(
); //返回list_int鍊錶的最後乙個元素的值
④list_int.clear(
); //清空list_int的鍊錶,把裡面的所有元素刪除
⑤list_int.begin(
); //返回list_int鍊錶第乙個數的迭代器
⑥list_int.end(
); //返回list_int鍊錶最後乙個數的迭代器
⑦list_int.empty(
); //判斷list_int鍊錶是否為空
⑧list_int.swap(v1)
; //v1是另乙個動態鍊錶,將list_int 和v1兩個鍊錶的元素互換
⑨list_int.reverse(
); //把list中的元素順序倒轉
⑩list_int.sort(
); //給list排序
a list_int.splice(list_int.begin(
),list_2)
; //將兩個list合併
list支援的動態插入也有多種方式
①呼叫push_back在尾部插入乙個元素,只能乙個乙個的插入:list_int.push_back(3)
;②呼叫push_front在頭部插入乙個元素,只能乙個乙個的插入:list_int.push_front(2)
;③呼叫insert在第乙個元素的前面插入乙個元素,list_int.insert(list_int.begin(
),888)
;④呼叫insert在第乙個元素的前面插入3個888元素,list_int.insert(list_int.begin(
),3,888)
;
list<
int>list_int,list_2;
list_int.
push_back(0
);list_int.
push_back(1
);list_int.
push_back(3
);list_2.
push_back(2
);list_2.
push_back(5
);list_2.
push_back(6
);list_int.
insert
(list_int.
begin()
,list_2.
begin()
,list_2.
end())
;int sz_int=
;list<
int>
::iterator itor = list_int.
begin()
;itor++
;list_int.
insert
(itor,sz_int+3)
;
①、list_int.pop_back(
); //刪除list_int動態鍊錶的最後乙個元素
②、list_int.erase(list_int.begin(
)); //刪除第乙個元素
③、list_int.erase(itor,list_int.end(
)); //刪除中間的元素
因為list不是陣列,所以不能使用下標進行遍歷,只能使用迭代器進行遍歷
for
(list<
int>
::iterator itor = list_int.
begin()
;itor !=list_int.
end();
++itor)
C 容器之List 鍊錶
特性總結 1.list建構函式 list lst 採用模板類實現,物件的預設構造形式 list 建構函式將 beg,end 前閉後開區間中的元素拷貝給本身 list 建構函式將n個elem拷貝被本身 list const list lst 拷貝建構函式 push back elem 在尾部加入乙個元...
C STL之list雙向鍊錶容器
不同於採用線性表順序儲存結構的vector和deque容器,list雙向鍊錶中任一位置的元素查詢 插入和刪除,都具有高效的常數階演算法時間複雜度o 1 list技術原理 為了支援前向和反向訪問list容器的元素,list採用雙向迴圈的鍊錶結構組織資料元素,鍊錶的每個節點包括指向前驅的指標 實際資料和...
STL容器之list鍊錶使用
目錄 一 list的概念理解 二 建構函式 三 元素插入和刪除 四 資料訪問 五 大小操作 六 反轉和排序 list鍊錶是將資料元素進行鏈式儲存,在物理單元上是非連續的結構,與vector動態陣列不同,陣列是一片連續的記憶體空間,list鍊錶是由一系列節點組成,而節點是由乙個儲存資料元素的資料域和乙...