STL中的vector與list插入資料速度比較

2021-07-16 20:55:26 字數 471 閱讀 4469

對於忘list中插入資料,很好理解,分配乙個新的結點空間,新增到鍊錶尾部即可;對於往vectorz中新增資料,需要判斷當前控制項是否夠用,不夠用的話需要再次分配稍大的一些空間,然後把已有的元素拷貝到新的空間區域,然後釋放已有的空間。也許有人覺得這個拷貝操作很費時,覺得沒有list新增的速度快,然而,事實並不是這樣…..

#include 

#include

#include

#include

using

namespace

std;

const

long num = 1000 * 1000 * 100; //新增資料個數

STL中vector的使用

作用 它能夠像容器一樣存放各種型別的物件,簡單地說,vector是乙個能夠存放任意型別的動態陣列,能夠增加和壓縮資料。vector在c 標準模板庫中的部分內容,它是乙個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。特別注意 使用vector需要注意以下幾點 1 如果你要表示的向量長度較長 ...

STL中vector的使用

vector是標準模板庫中我們經常使用的容器,它與陣列類似,它擁有一段連續的記憶體空間,並且起始位址不變,因此它能很好的支援隨機訪問 使用操作符訪問其中的元素 但由於它的記憶體空間是連續的,所以在中間進行插入和刪除操作會造成記憶體塊的拷貝 複雜度為o n 另外,當該陣列的記憶體空間不夠時,需要重新申...

STL中的向量 vector

向量 vector 是乙個封裝了動態大小陣列的順序容器 sequence container 跟任意其它型別容器一樣,它能夠存放各種型別的物件。可以簡單的認為,向量是乙個能夠存放任意型別的動態陣列。當程式設計師無法知道自己需要的陣列的規模多大時,用 vector 來解決問題可以達到最大節約空間的目的...