日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

vector 删除指定元素_std::vector简介

發(fā)布時(shí)間:2023/12/3 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vector 删除指定元素_std::vector简介 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

引入

使用vector,需添加頭文件#include<vector>,

要使用sort或find,則需要添加頭文件#include<algorithm>。

簡(jiǎn)介

vector是表示可以改變大小的數(shù)組的序列容器。

就像數(shù)組一樣,vector使用連續(xù)存儲(chǔ)空間存儲(chǔ)元素,這意味著它們的元素也可以使用指向其元素的指針進(jìn)行偏移來訪問,并與數(shù)組一樣高效。但與數(shù)組不同的是, vector的大小可以動(dòng)態(tài)變化,并且是由容器自動(dòng)處理的。

在內(nèi)部實(shí)現(xiàn)上,vector使用動(dòng)態(tài)分配的數(shù)組來存儲(chǔ)它們的元素。在插入新元素時(shí),vector的大小增大,可能需要重新分配數(shù)組,這意味著可能要分配新數(shù)組并將原有數(shù)組中所有元素移動(dòng)到這個(gè)新數(shù)組中。重新分配數(shù)組的時(shí)間成本相對(duì)高昂,因此,vector不會(huì)在每次向容器添加元素時(shí)都重新分配數(shù)組。vector容器可能會(huì)分配一些額外的存儲(chǔ)空間來適應(yīng)可能的增長(zhǎng),因此容器的實(shí)際容量可能比其包含的元素個(gè)數(shù)要大。不同庫(kù)可以實(shí)現(xiàn)不同的增長(zhǎng)策略以在使用現(xiàn)有內(nèi)存和 重新分配內(nèi)容之間取得平衡,但無論如何,重新分配內(nèi)存時(shí)的數(shù)組大小應(yīng)以對(duì)數(shù)增長(zhǎng),這樣在vector末端插入單個(gè)元素時(shí)就可以得到平攤的常數(shù)時(shí)間復(fù)雜度。

因此,與數(shù)組相比,vector消耗更多內(nèi)存,以換取以更有效的方式管理存儲(chǔ)空間。

與其他動(dòng)態(tài)序列容器(deques,lists和forward_lists)相比,vector可以非常高效地訪問其元素(就像數(shù)組一樣)并且相對(duì)高效地從其末尾添加或刪除元素。 對(duì)于涉及在末尾以外的位置插入或刪除元素的操作,性能比其他序列容器要差,并且與lists和forward_lists相比具有更少的迭代器和引用一致性。

刪除所有元素

clear()

總結(jié)

以上是生活随笔為你收集整理的vector 删除指定元素_std::vector简介的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。