C 中 vector(容器)的用法

2021-09-10 07:30:30 字數 1529 閱讀 9003

vector(向量): c++中的一種資料結構,確切的說是乙個類.它相當於乙個動態的陣列,當程式設計師無法知道自己需要的陣列的規模多大時,用其來解決問題可以達到最大節約空間的目的.

一.用法:

1.檔案包含:     

首先在程式開頭處加上#include以包含所需要的類檔案vector

還有一定要加上using namespace std;

二.變數宣告

2.1 例:宣告乙個int向量以替代一維的陣列:vector a;(等於宣告了乙個int陣列a,大小沒有指定,可以動態的向裡面新增刪除)。

2.2 例:用vector代替二維陣列.其實只要宣告乙個一維陣列向量即可,而乙個陣列的名字其實代表的是它的首位址,所以只要宣告乙個位址的向量即可,即:vector a.同理想用向量代替三維陣列也是一樣,vector a;再往上面依此類推.

vectorvec;        //宣告乙個int型向量

vectorvec(5); //宣告乙個初始大小為5的int向量

vectorvec(10, 1); //宣告乙個初始大小為10且值都是1的向量

vectorvec(tmp); //宣告並用tmp向量初始化vec向量

vectortmp(vec.begin(), vec.begin() + 3); //用向量vec的第0個到第2個值初始化tmp

int arr[5] = ;

vectorvec(arr, arr + 5); //將arr陣列的元素用於初始化vec向量

//這個主要是為了和vec.end()指標統一。

vectorvec(&arr[1], &arr[4]); //將arr[1]~arr[4]範圍內的元素作為vec的初始值

三.基本操作

(1). 容量

(2). 修改

(3)迭代器

(4)元素的訪問

四.演算法

vector::iterator it;

for (it = vec.begin(); it != vec.end(); it++)

cout << *it << endl;

//或者

for (size_t i = 0; i < vec.size(); i++)

#include reverse(vec.begin(), vec.end());
#include sort(vec.begin(), vec.end()); //採用的是從小到大的排序

//如果想從大到小排序,可以採用上面反轉函式,也可以採用下面方法:

bool comp(const int& a, const int& b)

sort(vec.begin(), vec.end(), comp);

vectorpile[maxn];//解決木塊問題

**:木塊問題

C 中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...

C 中vector容器的用法

在c 中,vector是乙個十分有用的容器,下面對這個容器做一下總結。1 基本操作 1 標頭檔案 include.2 建立vector物件,vector vec 3 尾部插入數字 vec.push back a 4 使用下標訪問元素,cout 5 使用迭代器訪問元素.vector iterator ...

C 中vector容器用法

目錄 vector容器說明 1 vector容器的初始化 vectora t是容器內元素的變數型別,可以是任何合法資料型別,a是變數名稱 2 vector向量容器常用方法 3 迭代器遍歷 容器型別 變數型別 iterator 迭代器名 4 vector容器中的一些重要演算法 5 vector常用方法...