寻找兄弟字符串
2017-05-16 09:37
148 查看
/* 如果两个字符串的字符一样,但是顺序不一样,被认为是兄弟字符串, 问如何在迅速匹配兄弟字符串(如,bad和adb就是兄弟字符串)。 */ #include <iostream> #include<cstring> using namespace std; int isBroStr(char *str1, char *str2) { int a[26 * 2] = {0}; int i, strLen; if (!str1 && !str2) return 1; else if (!str1 || !str2) return 0; else { if(strlen(str1) != strlen(str2)) return 0; strLen = strlen(str1); for(i = 0; i < strLen; i++) { ++a[str1[i] - 'A']; --a[str2[i] - 'A']; } for(i = 0; i < 26 * 2; i++) if (a[i]) return 0; return 1; } } int main() { char *str1 = "asdfaabAAB"; char *str2 = "asdfAABaab"; if (isBroStr(str1, str2)) cout << " String 1 and String 2 are brothers!" << endl; else cout << " String 1 and String 2 are not brothers!" << endl; system("PAUSE"); return 0; }
相关文章推荐
- 字符串-字符串的包含-寻找兄弟字符串 课后题答案
- 寻找兄弟字符串
- 寻找兄弟字符串
- (程序员面试题)字符串处理之寻找最大不重复子串
- 寻找最长公共子字符串
- 写一个在一个字符串(n)中寻找一个子串(m)第一个位置的函数
- 已知一个字符串,比如asderwsde,寻找其中的一个子字符串比如sde的个数,如果没有返回0,有的话返回子字符串的个数
- 寻找字符串中第一个只出现一次打字符
- 如何判断两个字符串是否是兄弟字符串?
- 寻找若干个字符串的最长公共前缀
- 寻找字符串里第一个只出现过一次的字符
- 使用正则表达式寻找字符串中出现了几个[***]样式的字符串
- 寻找字符串
- 从两个顺序的字符串中寻找最大公共子串
- 在大字符串寻找共出现几次子串的位置(KMP算法C写法)
- Python实现针对给定字符串寻找最长非重复子串的方法
- 在字符串中,寻找截取特定单词
- trie树 寻找以当前输入的字符串为前缀的字典里有多少个
- C/C++面试之算法系列--寻找最大公共子字符串
- 寻找最大公共子字符串