码迷,mamicode.com
首页 > 其他好文 > 详细

字符串处理技巧

时间:2015-04-20 22:22:57      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:

1、快速统计字符串中每个字符出现的个数

hash表

2、求两个字符串公共的最长子串长度和子串

双重循环遍历找到长度,同时用二重指针保留住最长长度时候的指针位置

3、求一个字符串中最大的重复子串长度和子串

和2的思路差不多

4、将一个字符串全排列输出

(1)递归 (2)使用STL中的next_permutation

5、将一个字符串的所有组合输出

递归

6、快速将一个整数(或十进制的字符串)转换成radix进制的字符串

整型直接用:char*itoa(int value,char*string,int radix);

十进制字符串转换到二进制字符串:先int atoi(const char *nptr);然后char*itoa(int value,char*string,int radix);

7、找一个字符串中的兄弟字符串

8、删除字符串中特定的一些字符

可以考虑用空间换时间的做法,申请一块新的字符空间,遍历原串,然后将不用删除的字符逐一拷贝到新的字符串中。

9、对大写、小写、数字分别排序,不同类别的字符按某种机制输出

可以考虑先用三个字符串分别存储大写、小写、数字等,先分别排序,然后按照某种机制去输出,输出取出字符串的时候,要注意每个分类的下标,最好设置标志位,而不要重复往后移动。

如果只是大写和小写字母的混合排序的话,可以在排序的时候使用tolower或toupper将字母转换成同一类进行排序。

字符串处理技巧

标签:

原文地址:http://www.cnblogs.com/bewolf/p/4368368.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!