导包:
#include<vector>
(1)定义动态数组
没有指定元素:
vector<int>arr;
事先指定元素:
vector<int>arr{1,2,3,4};
初始化长度以及初始值:
vector<int>arr(100,0);
给arr设置初始长度为100个元素,每个元素的值默认都是0
(2)计算长度
cout<<"初始化数组元素个数:"<<arr.size()<<endl;
(3)添加元素(在尾部)
arr.push_back(元素值);
(4)删除元素(在尾部)
arr.pop_back();
(5)开始索引位置
arr.begin()
(6)结束索引位置
arr.end()
注意:(5)和(6)在algorithm包中的sort函数中会用到!
(7)vector二维矩阵的输入与输出
①创建二维矩阵
int n;
cin>>n;
vector<vector<int>>arr;
②二维矩阵的输入
void shuru(int n,vector<vector<int>>&arr)
{
for(int i=0;i<n;i++)
{
vector<int>arr_row;//一行
for(int j=0;j<n;j++)
{
int temp;
cin>>temp;
arr_row.push_back(temp);
}
arr.push_back(arr_row);//把这一行添加到二维数组中
}
}
③二维矩阵的输出
void shuchu(vector<vector<int>>&arr)
{
for(int i=0;i<arr.size();i++)
{
for(int j=0;j<arr.size();j++)
{
cout<<arr[i][j]<<" ";
}
cout<<endl;
}
}
④完整代码
#include <iostream>
using namespace std;
#include<vector>
void shuru(int n,vector<vector<int>>&arr)
{
for(int i=0;i<n;i++)
{
vector<int>arr_row;//一行
for(int j=0;j<n;j++)
{
int temp;
cin>>temp;
arr_row.push_back(temp);
}
arr.push_back(arr_row);//把这一行添加到二维数组中
}
}
void shuchu(vector<vector<int>>&arr)
{
for(int i=0;i<arr.size();i++)
{
for(int j=0;j<arr.size();j++)
{
cout<<arr[i][j]<<" ";
}
cout<<endl;
}
}
int main()
{
int n;
cin>>n;
vector<vector<int>>arr;
shuru(n,arr);
shuchu(arr);
}