STL家族中 list雙向鍊錶

2021-10-02 11:04:33 字數 2217 閱讀 8168

最近蒟蒻在研究stl(c++中的標準函式庫),那現在蒟蒻就來介紹介紹其中的list容器叭 還有很多成員會在後續的bok中介紹的哦

list雙向鍊錶

list容器是乙個雙向鍊錶,可以高效的進行插入和刪除操作

list的定義及初始化

list<

int> se;

//建立空list

list<

int>se(

5);//建立含有5個元素的list

對list雙向鍊錶進行遍歷需要用迭代器進行遍歷

list<

int>

::iterator pl;

for(pl=se.

begin()

;pl!=se.

end(

);pl++)

list常用的操作函式

se.

back()

;//返回最後乙個元素

se.begin

();//返回指向第乙個元素的迭代器

se.clear

();//刪除所有元素

se.empty

();//判斷list是否為空

se.end()

;//返回末尾的迭代器

se.erase()

;//刪除乙個元素 erase前為迭代器(指標)而不是單純的數。

//它的作用是使作為引數的迭代器失效,並返回指向該迭代器下一引數的迭代器。

se.front()

;//返回第乙個1元素

se.insert()

;//插入乙個元素到se中

se.max_size()

;//返回list能容納的最大元素數量

se.merge()

;//合併兩個list

se.pop_back()

;//刪除最後乙個元素

se.pop_front()

;//刪除第乙個元素

se.push_back()

;//在list末尾新增元素

se.push_front()

;//在list開頭新增元素

se.remove()

;//從list中刪除元素

se.remove_if()

;//按指定條件刪除元素

se.resize()

;//改變list大小

re.reverse()

;//把list的元素倒轉

re.size()

;//返回list的元素個數

se.sort()

;//給list排序

se.swap()

;//交換兩個list

se.unique()

;//刪除list中重複的元素

上**

#include

#include

#include

using

namespace std;

std::list<

int> values;

std::list<

int> b;

std::list<

int> b1;

std::list<

int> b2;

int wanted

;// what we are looking for

void

output()

cout<}void

last()

void

first()

void

myinsert()

void

isempty()

void

mydelete()

}void

myclear()

void

binarysearch()

void

mysort()

void

my_size()

void

my_merge()

void

popfront()

void

popback()

void

myremove()

void

myreverse()

void

myswap()

intmain()

STL(八)list雙向鍊錶容器

list是雙向鍊錶的乙個泛化容器,實現了reversible container,front insertion sequence and back insertion sequence等概念的介面規範 不同於採用線性表順序儲存結構的vector and deque容器,list雙向鍊錶中任一位置的...

STL之list雙向鍊錶容器入門

stl泛型程式設計的功能是很強大的,list就是其中容器之一。今天上午用了近3個小時的時間,算是把list的簡單操作掌握了,其中用來實現list的 我也儲存下來了,供想學list容器的童鞋,不必再想我一樣苦逼的巧一上午 了!在此獻上 一枚 include include include using ...

List雙向鍊錶

include 宣告 list int mylist 定義 mylist.push front 1 頭部插入元素 mylist.push back 2 尾部插入元素 pop front 移除頭部元素 pop back 移除尾部元素 list int iterator lter 迭代器定義 iter ...