鏈表的常用操作
assign() 給list賦值
back() 返回最後一個元素
begin() 返回指向第一個元素的迭代器
clear() 刪除所有元素
empty() 如果list是空的則返回true
end() 返回末尾的迭代器
erase() 刪除一個元素
front() 返回第一個元素
get_allocator() 返回list的配置器
insert() 插入一個元素到list中
max_size() 返回list能容納的最大元素數量
merge() 合併兩個list
pop_back() 刪除最後一個元素
pop_front() 刪除第一個元素
push_back() 在list的末尾添加一個元素
push_front() 在list的頭部添加一個元素
rbegin() 返回指向第一個元素的逆向迭代器
remove() 從list刪除元素
remove_if() 按指定條件刪除元素
rend() 指向list末尾的逆向迭代器
resize() 改變list的大小
reverse() 把list的元素倒轉
size() 返回list中的元素個數
sort() 給list排序
splice() 合併兩個list
swap() 交換兩個list
unique() 刪除list中重複的元素
迭代器
(iterator)是一種對象,它是能夠用來遍歷標準模板庫容器中的部分或全部元素的指針
#include <iostream.h>
#include <list.h>
typedef list<int> LIST;
void main()
{
LIST list_first; //創建一個list_first的list對象
LIST::iterator i; //聲明一個迭代器
list_first.push_front (1); //從前面向list_first容器中添加數據
list_first.push_front (2);
list_fist.push_back (3); //從後面向list_first容器中添加數據
//從前向後顯示
for(i = list_first.begin(), i != list_first_end(); i++)
{
printf("%d \r", *i);
}
printf("\n");
//從後面向前顯示
LIST::reverse_iterator Ri;
for(Ri = list_first.rbegin(), Ri != list_first_rend(), Ri++)
{
printf("%d \r", *Ri);
}
printf("\n");
}