生成字符串的全排列

简介:  void permute(string s){ sort(s.begin(),s.end()); cout

 

void permute(string s) { sort(s.begin(),s.end()); cout<<s<<endl; while(next_permutation(s.begin(),s.end())) cout<<s<<endl; } 

 

上面的是标准库的迭代版本。

下面的是递归版本

void permute(string s,unsigned k) { if (k == s.length()-1) { cout<<s<<endl; } for (unsigned i = k;i<s.length();++i) { swap(s[i],s[k]); permute(s,k+1); } } 

相关文章
【Leetcode-13.罗马数字转整数 -14.最长公共前缀】
【Leetcode-13.罗马数字转整数 -14.最长公共前缀】
52 0
|
索引
【LeetCode】917. 仅仅反转字母、387. 字符串中的第一个唯一字符
目录 917. 仅仅反转字母 387. 字符串中的第一个唯一字符
48 0
|
7月前
|
Python
ptthon字符串的逆序输出
字符串的逆序输出
41 0
|
Shell
【Leetcode -342. 4的幂 -344.反转字符串 -345.反转字符串中的元音字母】
【Leetcode -342. 4的幂 -344.反转字符串 -345.反转字符串中的元音字母】
44 0
|
算法 前端开发 JavaScript
[LeetCode] 无重复字符的最长子串 & 最长回文子串
博主最近在看新的工作机会,也是在找一些leetcode上比较高频的算法复习一下,这里分享两道算法题的解题。
71 2
[LeetCode] 无重复字符的最长子串 & 最长回文子串
字符串的全排列
字符串的全排列
81 0
逆序字符串 和 字符串的逆序输出 的区别~
逆序字符串 和 字符串的逆序输出 的区别~
114 0
|
算法 前端开发 API
字符串看到 ”回文“ 尝试双指针
字符串看到 ”回文“ 尝试双指针
63 0
LeetCode 13罗马数字转整数&14最长公共前缀
上一题是整数转罗马数字,这题是罗马数字转整数。虽然是简单题,但我感觉其实有点烦。
101 0
LeetCode 13罗马数字转整数&14最长公共前缀