标签:字符串排序
//求一个字符串的全排列,我感觉自己实现真的是太难了。确定性的东西易求,但有点不确定的东西就难整了。标准模板库里面的算法算法next_permutation(arr,arr+strlen(arr))真的不错,尽管用cin cout会超时,但换成scanf printf就可以了
题目描述:
输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。#include<algorithm> #include <stdio.h> #include <string.h> using namespace std; int main() { char *arr=new char[10]; while(scanf("%s",arr)!=EOF) { sort(arr,arr+strlen(arr)); printf("%s\n",arr); while(next_permutation(arr,arr+strlen(arr))) printf("%s\n",arr); } return 0; } /************************************************************** Problem: 1369 User: hndxztf Language: C++ Result: Accepted Time:130 ms Memory:1024 kb ****************************************************************/
标签:字符串排序
原文地址:http://blog.csdn.net/mnmlist/article/details/39558083