順序容器用法總結

2021-08-02 08:24:45 字數 926 閱讀 9771

vector:可變大小陣列

支援快速隨機訪問。在尾部之外的位置插入或刪除元素可能很慢

deque:雙端佇列

支援快速隨機訪問。在頭尾位置插入/刪除速度很快

list:雙向鍊錶

只支援雙向順序訪問。在list中任何位置進行插入/刪除操作速度都很快

forward_list::單向鍊錶

只支援單向順序訪問。在鍊錶任何位置進行插入/刪除操作速度都很快

array:固定大小陣列

支援快速隨機訪問。不能新增或刪除元素

string:

與vector相似的容器,但專門用於儲存字元。隨機訪問快。在尾部插入/刪除速度快

選擇容器的基本準則:

通常,使用vector是最好的選擇,除非你有很好的理由選擇其他容器

如果你的程式有很多小的元素,且空間的額外開銷很重要,則不要使用list或forward_list

如果程式要求隨機訪問元素,應使用vector或deque

如果程式要求在容器的中間插入或刪除元素,應使用list或forward_list

如果程式需要在頭尾位置插入或刪除元素,但不會在中間位置進行插入或刪除操作,則使用deque

如果程式只有在讀取輸入時才需要在容器中間位置插入元素,隨後需要隨機訪問元素,則

(1)首先,確定是否真的需要在容器中間位置新增元素。當處理輸入資料時,通常可以很容易的向vector追加資料,然後再呼叫標準庫的sort函式來重排容器中的元素,從而避免在中間位置新增元素。

(2)如果必須在中間位置插入元素,考慮在輸入階段使用list,一旦輸入完成,將list中的內容拷貝到乙個vector中。

STL C C STL常用容器用法總結

c c stl常用容器用法總結 一 容器 概念 容器是儲存其他物件的物件。被儲存的物件必須是同一型別。基本特徵 以下用x表示容器型別 後面會講到 t表示儲存的物件型別 如int a和b表示為型別x的值 u表示為乙個x容器的識別符號 如果x表示vector,則u是乙個vector物件。表 達 式 返 ...

C 常用容器用法總結

概念 容器是儲存其他物件的物件。被儲存的物件必須是同型別。基本特徵 以下用x表示容器型別,t表示儲存的物件型別 如int a和b表示為型別x的值 u表示為乙個x容器的識別符號 如果x表示vector,則u是乙個vector物件。表示式返回型別說明複雜度 x iterator 指向t的迭代器型別 滿足...

vector容器用法

1 標頭檔案 include.2 建立vector物件,vector vec 3 尾部插入數字 vec.push back a 4 使用下標訪問元素,cout vector iterator it for it vec.begin it vec.end it cout it 6 插入元素 vec.i...