//ACM程序设计
/*
//vector向量容器
#include<vector>
using namespace std;
int main()
{
vector<int>v;
v.push_back(2);
v.push_back(7);
v.push_back(9);
return 0;
}
*/
/*
//用迭代器访问vector元素
#include<vector>
#include<iostream>
using namespace std;
int main()
{
vector<int>v(3);
v[0]=2;
v[1]=7;
v[2]=9;
vector<int>::iterator it;
for(it=v.begin();it!=v.end();it++)
{
cout<<*it<<" ";
}
cout<<endl;
return 0;
}
*/
/*
//元素的插入
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int>v(3);
v[0]=2;
v[1]=7;
v[2]=9;
v.insert(v.begin(),8);
v.insert(v.begin()+2,1);
v.insert(v.end(),3);
vector<int>::iterator it;
for(it=v.begin();it!=v.end();it++)
{
cout<<*it<<" ";
}
return 0;
}
*/
/*
//元素的删除
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int>v(10);
for(int i=0;i<10;i++)
{
v[i]=i;
}
//删除第2个元素,从第0个开始计算
v.erase(v.begin()+2);
vector<int>::iterator it;
for(it=v.begin();it!=v.end();it++)
{
cout<<*it<<" ";
}
cout<<endl;
//删除迭代器中第1到5的数字
v.erase(v.begin()+1,v.begin()+5);
for(it=v.begin();it!=v.end();it++)
{
cout<<*it<<" ";
}
cout<<endl;
//清空向量
v.clear();
cout<<v.size()<<endl;
return 0;
}
*/
/*
//使用reverse反向排列算法
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
vector<int>v(10);
for(int i=0;i<10;i++)
{
v[i]=i;
}
//反向排列向量的从首到尾的元素
reverse(v.begin(),v.end());
vector<int>::iterator it;
for(it=v.begin();it!=v.end();it++)
{
cout<<*it<<" ";
}
cout<<endl;
// v.clear();
return 0;
}
*/
/*
//使用sort对向量进行排序
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
vector<int>v;
int i;
for(i=0;i<10;i++)
{
v.push_back(9-i);
}
for(i=0;i<10;i++)
{
cout<<v[i]<<" ";
}
cout<<endl;
sort(v.begin(),v.end());
for(i=0;i<10;i++)
{
cout<<v[i]<<" ";
}
cout<<endl;
return 0;
}
*/
/*
//设置sort()的排序方式
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
vector<int>v;
int i;
bool cmp(const int &a,const int &b)
{
if(a!=b) return a>b;
else return a>b;
}
int main()
{
vector<int>v;
int i;
for(i=0;i<10;i++)
{
v.push_back(i);
}
for(i=0;i<10;i++)
{
cout<<v[i]<<" ";
}
cout<<endl;
sort(v.begin(),v.end(),cmp);
for(i=0;i<10;i++)
{
cout<<v[i]<<" ";
}
cout<<endl;
return 0;
}
*/
/*
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
vector<int>v;
int i;
for(i=0;i<10;i++)
{
v.push_back(i);
}
cout<<v.size()<<endl;
cout<<v.empty()<<endl;
v.clear();
cout<<v.empty()<<endl;
return 0;
}
*/
/*
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
string s;
cout<<s.length()<<endl;
return 0;
}
*/
/*
#include<string>
#include<iostream>
using namespace std;
int main()
{
string s;
s="Hello~!C++STL";
cout<<s<<endl;
return 0;
}
*/
/*
#include<string>
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
string s;
char ss[500];
//scanf的输入速度比cin快得多
//scanf是C语言函数,不支持string 对象
scanf("%s",ss);
s=ss;
cout<<s<<endl;
return 0;
}
*/
/*
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s;
s=s+'a';
s=s+'b';
s=s+'c';
cout<<s<<endl;
return 0;
}
*/
/*
//(2)采用append()的方法,在后面添加字符串
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s;
s.append("abc");
s.append("123");
cout<<s<<endl;
return 0;
}
*/
/*
//给string加入字符
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s="12345";
string::iterator it;
//迭代器位置为字符串首
it=s.begin();
s.insert(it+1,'p');
cout<<s<<endl;
return 0;
}
*/
/*
//删除string对象的元素
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s="abc123456";
string::iterator it;
it=s.begin();
s.erase(it+3);
cout<<s<<endl;
s.erase(it+4);
cout<<s<<endl;
s.erase(it,it+4);
cout<<s<<endl;
s="";
cout<<s.length()<<endl;
return 0;
}
*/
//替换string对象的字符
#include<iostream>
#include<string>
using namespace std;
int main()
{
string s;
s="abc123456";
s.replace(3,3,"good");
cout<<s<<endl;
return 0;
}
C++STL 中向量和字符串的操作,真累呀,一个晚上都在干体力活
最新推荐文章于 2022-04-08 21:41:42 发布