class Solution { public: /** * @param s string字符串 * @return string字符串vector */ vector<string> generatePermutation(string s) { set<string> st; // 清除之前的数据 int n = s.size(); for (int i = 0; i < (1 << n); ++i) { string ss; for (int j = 0; j < n; ++j) { if ((i >> j) & 1) { ss += s[j]; } } st.insert(ss); // 使用set来存储所有可能的子集,自动去重 } // 将set中的元素转存到vector中 vector<string> result(st.begin(), st.end()); return result; } };