字符串的排列

来源:互联网 发布:跟单软件下载 编辑:程序博客网 时间:2024/06/15 02:23

题目描述

输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 结果请按字母顺序输出。
输入描述:
输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。

解答

求字符串的全排列,偷懒用了库函数

class Solution {public:    vector<string> Permutation(string str) {        vector<string> ret;        if(str.empty())            return ret;        if(str.length() == 1)        {            ret.push_back(str);            return ret;        }        sort(str.begin(),str.end());        do        {            ret.push_back(str);        }while(next_permutation(str.begin(),str.end()));        return ret;    }};
0 0