前几天做搜狗的校园招聘笔试题,看见了一题关于vector、list和map区别的题目,360的面试也有考官问到list和vector的区别,所以这几天看了一下STL中的几个标准容器。学到map的时候,才深切体会到容器的好处。以前不知道map的时候,像这种题目,只会傻乎乎地拿数组来做,要是map就简单多了。下面是代码:
<span style="font-family:Times New Roman;font-size:18px;">#include <iostream>
#include <stdlib.h>
#include <string>
#include <map>
using namespace std;
int main(void){
map<char,int> ms;
map<char,int>::iterator p,mEnd;
string s;
cin>>s;
int len = s.length();
for(int i=0;i<len;i++){
p=ms.find(s[i]);
if(p!=ms.end()){
p->second++;
}
else{
ms.insert(pair<char,int>(s[i],1));
}
}
p=ms.begin();
mEnd=ms.end();
for(;p!=mEnd;p++){
cout<<p->first<<":"<<p->second<<endl;
}
return 0;
}</span>
<span style="font-family:Microsoft YaHei;font-size:18px;">
</span>
个人编程能力还很弱,有什么写得不好的地方请不要介意。