首页 > 编程语言 > 详细

C++算法竞赛中的STL

时间:2021-08-11 23:42:32      阅读:27      评论:0      收藏:0      [点我收藏+]

vector

基本操作

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
	//定义vector 
	vector<int> a;
	//定义长度为n 
	vector<int> b(10);
	//同上并且初始化
	vector<int> c(10,666);
	for(auto item : c){
		cout<<item<<" ";
	} 
	//定义十个vector类型
	vector<int> d[10];
	
	// 时间复杂度都是O(1) 
	a.size(); //大小
	a.empty(); //是否为空
	a.clear(); //并不是所有容器都有
	a.front(); //最前面 
	a.back(); //最后面
	a.push_back(10);//追加
	a.pop_back();//弹出 
	a.begin();//第0个数 
	a.end();//最后一个数的后面一个数 
	return 0;
	//比大小
	cout<<a>b<<endl;
}

分配空间的时间复杂度的决定因素不是空间的大小,而是申请的次数,例如,申请1000个一个元素的空间和申请一个1000个元素的空间,时间相差1000倍

遍历vector的几种方式

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
#include <vector>
using namespace std;
int main()
{
	vector<int> a(10,3);
	// c++11特性
	for(auto item : a) cout<<item<<" ";
	cout<<endl;
	//iterator 迭代器
	for(vector<int>::iterator i=a.begin();i!=a.end();i++) cout<<*i<<" ";
	cout<<endl;
	// for循环
	for(int i=0;i<a.size();i++)
	{
		cout<<a[i]<<" ";
	}
	cout<<endl;
	return 0;
}

C++算法竞赛中的STL

原文:https://www.cnblogs.com/zheblog/p/15130327.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!