列表容器list

2021-07-22 21:45:04 字數 850 閱讀 2922

相對於vector來說,list比較複雜,允許插入,刪除,list節點不保證在儲存空間連續存在,所以必須有指向它的節點,它是雙向環狀鍊錶,需要乙個指標,api為:

push_front(x)

:把元素

x推入(插入)

到鍊錶頭部

pop_front()

:彈出(刪除)

鍊錶首元素

merge(listref):把

listref

所引用的鍊錶中的所有元素插入到鍊錶中

,可指定合併規則

splice()

:把list

連線到pos

的位置

remove(val)

:刪除鍊錶中所有值為

val的元素

remove_if(pred)

:刪除鍊錶中謂詞

pred

為真的元素 (

謂詞即為元素儲存和檢索的描述,如

std::less<>

,std::greater<>

那麼就按降序

/公升序排列

,你也可以定義自己的謂詞)

sort()

:根據預設的謂詞對鍊錶排序

sort(pred)

:根據給定的謂詞對鍊錶排序

unique()

:刪除鍊錶中所有重複的元素

unique(pred)

:根據謂詞

pred

刪除所有重複的元素

,使煉表中沒有重複元素

注意:vector和deque支援隨機訪問,而list不支援隨機訪問,因此不支援訪問!

STL 順序容器 列表list

list和雙向鍊錶結構相似,每個節點包含乙個資料塊,前向指標,和後向指標,儲存在非連續的記憶體空間中 很顯然,查詢操作時,只能順序查詢,不支援內部隨機訪問 不像陣列,向量vectoer,佇列可以用下標查詢 但是可以在任意序列位置插入和刪除,這是vector和queue deque 無法比擬的 而且相...

Python容器之列表 list

列表的定義 列表是一種容器 通常用來儲存計算機的資料物件 列表是可以被改變的序列 列表是由一系列特定的元素組成的,元素與元素之間可能沒有 任何的關聯關係,但他們之間也有先後順序關係l l繫結空列表l 1,2,3,4 l 北京 上海 深圳 西安 l 1,one 3.14,四 ture l 1,2,3....

容器框架 JCF 列表 List

實現優點 缺點適用範圍 特點arraylist linkedlist vector 以可變陣列實現的列表,不支援同步 以雙向鍊錶實現的列表,不支援同步 以可變陣列實現的列表,支援同步,適合多執行緒下使用 利用索引位置可以快速定位訪問 順序訪問高效,中間插入和刪除高效 支援多執行緒 指定位置插入 刪除...