一、vector的介紹
vector是C++里面的一個容器,也是我們數學上面理解的向量,有一些比較常見的操作。
二、vector的定義
#include<vector> using namespace std;
//int 說明的是vector存儲的數據類型 vector<int> odd_vector;
三、vector的一些操作(具體調用方式自行查找)
1.push_back 在數組的最后添加一個數據
2.pop_back 去掉數組的最后一個數據
3.at 得到編號位置的數據
4.begin 得到數組頭的指針
5.end 得到數組的最后一個單元+1的指針
6.front 得到數組頭的引用
7.back 得到數組的最后一個單元的引用
8.max_size 得到vector最大可以是多大
9.capacity 當前vector分配的大小
10.size 當前使用數據的大小
11.resize 改變當前使用數據的大小,如果它比當前使用的大,者填充默認值
12.reserve 改變當前vecotr所分配空間的大小
13.erase 刪除指針指向的數據項
14.clear 清空當前的vector
15.rbegin 將vector反轉后的開始指針返回(其實就是原來的end-1)
16.rend 將vector反轉構的結束指針返回(其實就是原來的begin-1)
17.empty 判斷vector是否為空(vector.empty())
18.swap 與另一個vector交換數據
三、使用sort對於vector分類
用法:
#inlcude <algorithm>
sort(vector.begin(),vector.end());
例子如下:
#include <algorithm> //使用sort需要包含這個頭文件 //這個方法的主要的作用是把一個向量里面的奇數找出來放到原來的位置 class Kata { public: std::vector<int> sortArray(std::vector<int> array) { if(array.empty()) return array; std::vector<int> odd_vector; for(int i=0;i<array.size();i++) { if(array[i]%2==1) { odd_vector.push_back(array[i]); } } if(odd_vector.size()>0) { //sort對於vector向量的排序,升序排列 sort(odd_vector.begin(),odd_vector.end()); int number=0; for(int i=0;i<array.size();i++) { if(array[i]%2==1) { array[i]=odd_vector[number]; number++; } } } return array; } };