C vector用法初記

2021-07-15 06:56:39 字數 1996 閱讀 5821

建立一維vector:

vector

nums;//不指定長度

vector

nums(n); // 指定長度為n

新增元素

nums.push_back(1);//直接從陣列末端新增

nums[i] = 1;//直接賦值給第i個位置

刪除元素

nums.resize(nums.size-i); //直接將陣列長度減小,某種方式上刪掉了後面i個

nums.pop_back();//刪掉最後乙個元素

陣列遍歷

for(int i = 0; i

< nums.

size(); i++){

cout<

其他

獲得長度:nums.size()

排序(o(nlogn)):sort(nums.begin(),nums.end());

翻**reverse(nums.begin(), nums.end());

合併兩個vector:合併nums1和nums2,並將合併後的陣列賦值給nums

vector

nums1(m),nums2(n);

vector

nums;

nums.resize(m+n);

merge(nums1.begin(), nums1.end(),nums2.begin(),nums2.end(),nums);

建立m*n的二維vector:直接定義

vector

> nums(m ,vector

(n)); //m*n的二維vector

定義了乙個vector容器,元素型別為vector,初始化為包含m個vector物件,每個物件都是乙個新創立的vector物件的拷貝,而這個新創立的vector物件被初始化為包含n個0。

vector(n)表示構造乙個無名且含n個0的vector物件。

動態建立m*n的二維vector

方法一:

vector

> nums;

nums.resize(m);

for(int i=0;i方法二:

vector

> nums;nums.resize(m,vector

(n));

初始化二維陣列

vector

> nums(m ,vector

(n,0)); //m*n的二維vector,所有元素為0

獲得二維陣列的行數:nums.size();

獲得二維陣列的列數:nums[0].size()

陣列遍歷

int m = nums.size(),n = nums[0].size();

for(int i = 0; i < m; i++){

for(int j = 0; j < n; j++){

cout《咦 用vector定義二維陣列還闊以醬紫 ——vectorv[maxn]; //備註:node 是結構體; maxn 是v陣列裡元素的個數

C vector用法初記

一維vector建立一維vector 1.vector nums 不指定長度 2.vector nums n 指定長度為n 新增元素 1.nums.push back 1 直接從陣列末端新增 2.nums i 1 直接賦值給第i個位置 刪除元素 1.nums.resize nums.size i 直...

c vector 基本用法

include a.push back x x 為插入的資料out coll.erase coll.begin i,coll.begin j 刪除區間 i 1,j coll.erase coll.begin 2,coll.begin 5 刪除區間 3,5 coll.erase coll.begin ...

C vector用法總結

向量 vector 是一種物件實體,能夠容納許多其他型別相同的元素,因此又被稱為容器。與string相同,vector 同屬於stl standard template library,標準模板庫 中的一種自定義的資料型別,可以廣義上認為是陣列的增強版。vector 容器與陣列相比其優點在於它能夠根...