首页 » Program » C/C++ » 正文

字符串字典序全排列

有递归和非递归的方法,我这里用的是STL的一个next_permutation()函数

    #include <stdio.h>
    #include <algorithm>
    #include <string.h>
    using namespace std;

    void permutation(char *str,int length)
    {
        sort(str,str + length);
        printf("%s\n",str);
        while (next_permutation(str,str + length))
            {
                printf("%s\n",str);
            }
        printf("\n");
    }

    int main()
    {
        char str[15];
        while (scanf("%s",str)!=EOF)
            {
                int length;
                length = strlen(str);
                permutation(str,length);
            }
        return 0;
    }

赞 (0)

Comment