解题思路和代码:
#include <iostream>
#include <string>
#include <algorithm>
#include <set>
using namespace std;
bool canResort_set(string s1,string s2)
{
if(s1.empty() && s2.empty()) return true;
if(s1.length() != s2.length() || s1.empty() || s2.empty()) return false;
multiset<char> m1,m2;
for(int i=0;i<s1.size();i++){
m1.insert(s1[i]);
m2.insert(s2[i]);
}
return m1==m2;
}
bool canResort_sort(string s1,string s2)
{
sort(s1.begin(),s1.end());
sort(s2.begin(),s2.end());
return s1 == s2;
}
int main()
{
string s1 = "qwertyuioqqq";
string s2 = "oiuytrewqqqq";
cout << canResort_sort(s1,s2) << endl;
cout << canResort_set(s1,s2) << endl;
return 0;
}