C++实现统计字符串出现次数
2008-11-12 12:47
381 查看
问题:在一字符串中查找一子串串并统计其出现的次数。
分析:解决这个问题若用C语言实现的话需要用到strchr()和strncmp()函数来进行子串的查找,然后统计其出现次数。而这里我用到C++中string字符串的函数进行实现,算法的思路是当查找到一个子串之后,就把这个子串从原来的字符串中删去。代码如下:
#include <iostream>
#include <string>
using namespace std;
int main()
{
int n=0,sum=0;
string s1("qwertyqwertyqwerty");
string s2("ert");
string temp=s1;
while (1){ //循环:查找到子串就把子串删去
n=temp.find(s2); //返回子串的位置
if (n!=-1){ //n=-1表示未找到子串
temp=temp.substr(n+s2.length(),temp.length()-s2.length()); //开一个新的字符串变量temp存储删去子串后的字符串
sum++; //出现次数
}
else break;
}
cout<<sum;
}
分析:解决这个问题若用C语言实现的话需要用到strchr()和strncmp()函数来进行子串的查找,然后统计其出现次数。而这里我用到C++中string字符串的函数进行实现,算法的思路是当查找到一个子串之后,就把这个子串从原来的字符串中删去。代码如下:
#include <iostream>
#include <string>
using namespace std;
int main()
{
int n=0,sum=0;
string s1("qwertyqwertyqwerty");
string s2("ert");
string temp=s1;
while (1){ //循环:查找到子串就把子串删去
n=temp.find(s2); //返回子串的位置
if (n!=-1){ //n=-1表示未找到子串
temp=temp.substr(n+s2.length(),temp.length()-s2.length()); //开一个新的字符串变量temp存储删去子串后的字符串
sum++; //出现次数
}
else break;
}
cout<<sum;
}
相关文章推荐
- mysql自定义函数实现统计一个字符串在另一个长字符串中出现的次数
- C++统计字符串中每个字符出现的次数
- C++实现统计从1到n中1出现的次数(另外一种方法)
- 利用C语言实现:输入两个字符串,统计一个字符串在另一个字符串中出现的次数 。
- PHP实现统计所有字符在字符串中出现次数的方法
- 集合框架_统计字符串中每个字符出现的次数案例代码实现
- 用js实现统计字符串里面的出现次数最多的字符
- 求一个字符串中连续出现次数最多的字串 c++实现方法
- 实现给定一个字符串剔除重复字符,并统计各个字符出现的次数
- 编程珠玑: 15.1实现一个哈希表统计字符串出现次数 -------解题总结
- 统计字符串中每个单词出现的次数 for C++
- 上千万或上亿数据(有重复),统计其中出现次数最多的N个数据. C++实现
- c++统计字符串出现次数
- C++ 实现从0~100中随机生成50个数,统计出现的数字最大值和最小值,输出出现最多的次数及对应的数字
- Java编程实现统计一个字符串中各个字符出现次数的方法
- JS实现找到某字符串中出现次数最多的字符,并统计次数
- 一个字符串中出现次数最多的字符 统计这个次数【实现代码】
- 统计字符串的某一子串在字符串中的出现次数(C语言实现)
- 字典树-大量字符串前缀及出现次数是否存在统计(Trie树-java)算法实现
- 集合框架-统计字符串中每个字符出现的次数案例代码实现