之前做过类似的题目,先用256数组(ASCII码个数)保存每个元素出现的个数,如果个数一样就说明可以转换
class ReverseEqual {
public:
bool checkReverseEqual(string s1, string s2) {
if(s1.size()!= s2.size())
return false;
int num1[256];
int num2[256];
for(int i=0; i<256; i++)
num1[i] = num2[i] = 0;
for(int i=0; i<s1.size(); i++)
{
int tmp1 = s1[i];
int tmp2 = s2[i];
num1[tmp1]++;
num2[tmp2]++;
}
for(int i=0; i<256; i++)
{
if(num1[i]!=num2[i])
return false;
}
return true;
}
};