#include<iostream> #include<string> #include <algorithm> #include<stdlib.h> using namespace std; void taxis(string&s){ //选择排序 for(int i=0;i<s.size();i++) { int min=i; for(int j=i+1;j<s.size();j++) if(s[j]<s[min]) min=j; int temp=s[i]; s[i]=s[min]; s[min]=temp; } } void main(){ string str; cout<<"input the string:"; cin>>str; string s=str; taxis(str); int *p; p=new int[str.size()]; for(int i=0,j=0;j<str.size();++i) { p[i]=count(str.begin(),str.end(),str[j]); j+=p[i]; } for(i=0,j=0;j<str.size();i++) { cout<<str[j]<<"在"<<s<<"中出现频率:\t"<<p[i]<<endl; j+=p[i]; } delete[]p; system("pause") ; } 输入字符串,按词典序输出字符在字符串中频率;

评论