打卡系列1_C++_vector

为了克服懒惰,每日一打卡监督自己,详细内容请去原文看

学习之code来源于:http://blog.csdn.net/w_linux/article/details/71600574

vector
向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。
可以简单的认为,向量是一个能够存放任意类型的动态数组
//
1.pop_back()&push_back(elem)实例在容器最后移除和插入数据
//#include<iostream>
//#include<string.h>
//#include<vector>
//using namespace std;
//
//int main()
//{
//	vector<int>obj; // 创建一个向量存储容器 int
//	for(int i=0;i<10;i++)  // push_back(elem) 在数组最后添加数据
//	{
//		obj.push_back(i);
//		cout<<obj[i]<<","; 
//	 } 
//	for(int i=0;i<5;i++)
//	{
//		obj.pop_back();
//	}
//	cout<<"\n"<<endl;
//	for(int i=0;i<obj.size();i++) // size()容器中实际数据个数
//	{
//		cout<<obj[i]<<","; 
//	} 
//	return 0;
// } 

//2.clear()清除容器中所有数据
//#include<string.h>
//#include<vector>
//#include<iostream>
//using namespace std;
//
//int main()
//{
//	vector<int>obj;
//	for(int i=0;i<10;i++)  // push_back(elem)在数组最后添加数据
//	{
//		obj.push_back(i);
//		cout<<obj[i]<<" "; 
//	 } 
//	obj.clear(); // 清除容器中所有数据
//	for(int i=0;i<obj.size();i++)
//	{
//		cout<<obj[i]<<endl;
//	 } 
//	return 0;	
//}


3.排序
//#include<string.h>
//#include<vector>
//#include<iostream>
//#include<algorithm>  // sort() 的头文件 
//using namespace std;
//
//int main()
//{
//	vector<int>obj;
//	
//	obj.push_back(1);
//	obj.push_back(3);
//	obj.push_back(0);
//	
//	sort(obj.begin(),obj.end()); // 从小到大
//	
//	cout<<"从小到大:"<<endl;
//	for(int i=0;i<obj.size();i++)
//	{
//		cout<<obj[i]<<" ";
//	 } 
//	cout<<"\n"<<endl;
//	cout<<"从大到小:"<<endl;
//	reverse(obj.begin(),obj.end());
//	for(int i=0;i<obj.size();i++)
//	{
//		cout<<obj[i]<<" "; 
//	 } 
//	return 0;
// } 


4.访问(直接数组访问&迭代器访问)
//#include<string.h>
//#include<vector>
//#include<iostream>
//using namespace std;
//
//int main()
//{
//	vector<int>obj;
//	for(int i=0;i<10;i++)
//	{
//		obj.push_back(i);
//	}
//	cout<<"直接利用数组:";
//	for(int i=0;i<10;i++)
//	{
//		cout<<obj[i]<<" ";
//	 } 
//	cout<<endl;
//	cout<<"利用迭代器:";
//	vector<int>::iterator it; //声明一个迭代器访问vector容器,遍历或指向vector容器中的元素
//	for(it=obj.begin();it!=obj.end();it++)
//	{
//		cout<<*it<<" ";
//	 } 
//	return 0;
//}

output:
直接利用数组:0 1 2 3 4 5 6 7 8 9 
利用迭代器:0 1 2 3 4 5 6 7 8 9

5.二维数组两种定义方法(结果一样)
//#include<string.h>
//#include<vector>
//#include<iostream>
//using namespace std;
//
//int main()
//{
//	int N=5,M=6;
//	
//	vector<vector<int> > obj(N);// 定义二维动态数组大小5行
//	for(int i=0;i<obj.size();i++)//动态二维数组为5行6列,值全为0
//	{
//		obj[i].resize(M);   // 重要!!! 
//	 }
//	
//	for(int i=0;i<obj.size();i++) // 输出二维动态数组
//	{
//		for(int j=0;j<obj.size();j++)
//		{
//			cout<<obj[i][j]<<" ";
//		 } 
//		cout<<"\n";
//	 } 
//	 return 0;
// }
 
5.二维数组两种定义方法(结果一样) 方法二
//#include<string.h>
//#include<vector>
//#include<iostream>
//#include<algorithm>
//using namespace std;
//
//int main()
//{
//	int N=5,M=6;
//	vector<vector<int> > obj(N,vector<int>(M)); // 定义二维动态数组5行6列
//	
//	for(int i=0;i<obj.size();i++)
//	{
//		for(int j=0;j<obj[i].size();j++)
//		{
//			cout<<obj[i][j]<<" ";
//		}
//		cout<<"\n"; 
//	 } 
//	return 0;
// } 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值