stl总结精简版
STL 精简版
vetor
#include<vector>
#include<cstdio>
#include<algorithm>
#include<iostream>
using namespace std;
int main()
{
vector <int> a;//定义一维数组
vector <int *> tm; //定义二位数组
int b = ;
a.push_back(b);//在数组的最后添加一个数据
a.push_back();
a.push_back();
a.pop_back();//去掉数组的最后一个数据
cout<<a.at()<<endl;//得到编号位置的数据
vector<int>::iterator it;
for(it = a.begin(); it != a.end(); it++){
printf("%d ",*it);
}
puts("");
printf("front = %d; back = %d\n",a.front(),a.back());
it = a.begin();
a.erase(it);//删除指针数据项
for(int i = ; i < a.size(); i++){
printf("%d ",a[i]);
}
puts("");
a.clear();//清空
if(a.empty()) puts("now its over");
return ;
}
set
#include<set>
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
struct Node{
char str[];
bool operator < (const Node a) const {
return (strcmp(str,a.str) <= );
}
};
int main()
{
set<int>s;
s.insert();
s.insert();
s.insert();
//set中不会有重复的元素,所以我们如果需要去重,直接丢到set里是不错的选择
//set可以定义比较函数,因为set可以通过中序遍历直接从小到大的排序输出 //中序遍历
set<int>::iterator it;
for(it = s.begin(); it != s.end(); it++){
printf("%d ",*it);
}
puts("");
s.erase();//删除键值为2的元素
printf("find(3) = %d\n",s.find());
for(it = s.begin(); it != s.end(); it++){
printf("%d ",*it);
}
puts("");
s.clear();//清空set
if(s.empty()) puts("Now its over"); set<Node> n;
Node tm;
tm.str[] = 's'; tm.str[] = 'o';tm.str[] = ;
n.insert(tm);
Node tm2;
tm2.str[] = 'g'; tm2.str[] = 'e';tm2.str[] = ;
printf("%d\n", (tm < tm2));
printf("%d\n", (strcmp("ge", "so")));
tm.str[] = 'g'; tm.str[] = 'e';tm.str[] = ;
n.insert(tm);
tm.str[] = 's'; tm.str[] = 'i';tm.str[] = ;
n.insert(tm);
tm.str[] = 'b'; tm.str[] = 'e';tm.str[] = ;
n.insert(tm);
tm.str[] = 'd'; tm.str[] = 'n';tm.str[] = ;
n.insert(tm);
set<Node>::iterator p;
for(p = n.begin(); p!=n.end(); p++ ){
printf("%s ",(*p).str);
}
puts("");
return ;
}
stack
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stack>
using namespace std; int main()
{
stack<int> st;
st.push();
st.push();
st.push();
while(!st.empty()){
printf("%d ", st.top());
st.pop();
}
puts("");
printf("size = %d\n",st.size());
return ;
}
queue
#include<cstdio>
#include<queue>
using namespace std;
int main()
{
queue<int> qu;
for(int i = ; i < ; i++){
qu.push(i);
}
printf("front = %d; back = %d\n",qu.front(), qu.back());
while(!qu.empty()){
printf("%d ",qu.front());
qu.pop();
}
puts("");
printf("size = %d\n",qu.size());
return ;
}
priority_queue
#include<cstdio>
#include<cstring>
#include<queue>
using namespace std;
int main()
{
priority_queue<int> q;
for(int i = ;i < ; i++) q.push(i);
while(!q.empty()){
printf("%d ",q.top());
q.pop();
}
puts("");
return ;
}
stl总结精简版的更多相关文章
- Linux上oracle精简版客户端快速部署
RHEL6 + Oracle 11g客户端快速部署 需求:只是用到客户端的sqlplus, sqlldr功能. 方案:用精简版实现客户端的快速部署 1.上传oracle精简版客户端到服务器/tmp目录 ...
- ArcGIS10.2.1精简版、ArcGIS_Desktop10_Tutorial、破解文件等下载地址
原版ArcGIS for Desktop的ISO文件一般都在4.5G以上,一般人用不上里面很多工具,下载回来又浪费时间,现推出ArcGIS10.2.1精简版(里面只包含主程序.Data Interop ...
- TeamViewer12.0.71503(远程控制软件)精简版 单文件企业版介绍
TeamViewer 是一款能在任何防火墙和 NAT 代理的后台用于远程控制,桌面共享和文件传输的简单且快速的解决方案.为了连接到另一台计算机,只需要在两台计算机上同时运行 TeamViewer 即可 ...
- Log4j快速使用精简版
Log4j快速使用精简版 1.导入log4j-1.2.17.jar包 2.在src根目录下创建log4j.properties文件 log4j.rootLogger=INFO, CONSOLE, FI ...
- VMware10.06精简版安装后台运行
VMware10.06精简版安装时会出现一个安装功能选择菜单,里面有一条后台运行必选功能,一般人会跳过条.当你打算在服务器上用vmware时,一定要安装后台运行服务,否则你无法换出正在运行的后台虚拟机 ...
- [异常解决] ubuntu上安装虚拟机遇到的问题(vmware坑了,virtual-box简单安装,在virtual-box中安装精简版win7)
利用周末时间将整个电脑格式化,换成了ubuntu系统- 所谓:扫清屋子再请客! 但是有些软件只在win上有,于是还是考虑装个虚拟机来个——逐步过度策略,一点点地从win上转移到linux上 我的系统是 ...
- 电脑公司最新GHOST WIN7系统32,64位优化精简版下载
系统来自系统妈:http://www.xitongma.com 电脑公司最新GHOST win7系统32位优化精简版V2016年3月 系统概述 电脑公司ghost win7 x86(32位)万能装机版 ...
- TeamViewer12.0.71503(远程控制软件)精简版单文件企业版介绍
TeamViewer 是一款能在任何防火墙和 NAT 代理的后台用于远程控制,桌面共享和文件传输的简单且快速的解决方案.为了连接到另一台计算机,只需要在两台计算机上同时运行 TeamViewer 即可 ...
- centos7精简版(minimal)killall: command not found
centos7精简版(minimal)运行killall命令提示 command not found 是由于没有安装psmisc所致 Psmisc软件包包含三个帮助管理/proc目录的程序. 安装下列 ...
随机推荐
- JavaSE项目之聊天室
引子: 当前,互联网 体系结构的参考模型主要有两种,一种是OSI参考模型,另一种是TCP/IP参考模型. 一.OSI参考模型,即开放式通信系统互联参考模型(OSI/RM,Open Systems In ...
- 回顾2017系列篇(二):移动端APP设计趋势
移动端APP在2017年经历了诸多的变化, 人工智能.聊天式的界面.响应式设计.虚拟现实(VR)和增强现实(AR)让设计师不断面临新的挑战.研究表明,用户每天耗费在手机和平板上的平均时长为158分钟, ...
- 9.11 test
题面.pdf T1:通过打表发现,从一个点出发只有距离为1,2,3,5,6,9,10,13,17的点才不能到达: 那么我们转移的时候只有距离在20以内才不一定能直接转移,那么我们离散化之后; 对于每一 ...
- [解决方案]WebAPI+SwaggerUI部署服务器后,访问一直报错的问题
项目的背景:制作一批接口用来给前台app或者网站提供服务,因为WebApi是最近几年来比较流行和新颖的开发接口的方式,而且又属于轻型应用,所以选用它 部署的过程:建立了WebAPI项目并使用Swagg ...
- webpack配置报错:invalid configuration object.webpack has been initialisted using a configuration objcet that does not match thie API schema
最近接收了别人的项目,webpack配置总是报错如下:最后找到了解决办法,在此分享一下: 错误情况: 解决办法: 将package.json里面的colors删除掉即可
- input上传图片(file),预览图片的两种方法。blob与base64编码
上传图片时一般都需要预览,我一般用这两种方法来实现.base64编码可以直接上传到后台,后台解析下,得到的文件就会比较小了,省去了压缩图片这一步了. //获取对象input file 的图片地址,放进 ...
- Parallels Desktop 12
我微新solq123987654 备注:PD 科普:PD12有什么用,PD是让mac系统可以运行wind系统的软件,如果你不习惯mac os 或工作需要那PD绝对是个好软件正版要七八百授权,只要十五就 ...
- Webpack 2 视频教程 009 - 配置 ESLint 实现代码规范自动测试 (上)
原文发表于我的技术博客 这是我免费发布的高质量超清「Webpack 2 视频教程」. Webpack 作为目前前端开发必备的框架,Webpack 发布了 2.0 版本,此视频就是基于 2.0 的版本讲 ...
- [Spark内核] 第28课:Spark天堂之门解密
本課主題 什么是 Spark 的天堂之门 Spark 天堂之门到底在那里 Spark 天堂之门源码鉴赏 引言 我说的 Spark 天堂之门就是SparkContext,这篇文章会从 SparkCont ...
- 关于javascript代码优化的8点建议
前面的话 本文将详细介绍JS编程风格的几个要点 松耦合 当修改一个组件而不需要更改其他组件时,就做到了松耦合 1.将JS从CSS中抽离:不要使用CSS表达式 //不好的做法 .box{width: e ...