字符串排列
来源:互联网 发布:华为云计算论坛 编辑:程序博客网 时间:2024/05/01 18:11
题目描述
编写一个方法,确定某字符串的所有排列组合。
给定一个string A和一个int n,代表字符串和其长度,请返回所有该字符串字符的排列,保证字符串长度小于等于11且字符串中字符均为大写英文字符,排列中的字符串按字典序从大到小排序。(不合并重复字符串)
测试样例:
"ABC"
编写一个方法,确定某字符串的所有排列组合。
给定一个string A和一个int n,代表字符串和其长度,请返回所有该字符串字符的排列,保证字符串长度小于等于11且字符串中字符均为大写英文字符,排列中的字符串按字典序从大到小排序。(不合并重复字符串)
测试样例:
"ABC"
返回:["CBA","CAB","BCA","BAC","ACB","ABC"]
#include<iostream>#include<string>#include<vector>#include<algorithm>using namespace std;class Permutation{public: void core(vector<string>&result,string &s,int index) { int len=s.size(); if(index==len-1) { result.push_back(s); return; } for(int i=index;i<len;i++) { swap(s[i],s[index]); core(result,s,index+1); swap(s[i],s[index]); } } vector<string> getPermutation(string A) { vector<string>result; core(result,A,0); sort(result.begin(),result.end(),greater<string>()); return result; }};int main(){ Permutation s; string A="ABC"; vector<string>svc=s.getPermutation(A); for(vector<string>::iterator it=svc.begin();it!=svc.end();it++) cout<<*it<<endl;}
0 0
- 字符串排列
- 字符串排列
- 字符串排列
- 字符串排列
- 字符串排列
- 字符串排列
- 【字符串2】-字符串排列
- 字符串的全排列
- 字符串的全排列
- 字符串全排列问题
- 字符串全排列
- 字符串倒序重新排列
- 字符串全排列问题
- 字符串全排列
- 求字符串全排列
- 转载 字符串的排列
- 字符串排列数
- 字符串排列问题
- 在resin4.0部署项目,出现server 'default' 错误
- html5位置定位
- 冒泡排序
- HDU 3572 Task Schedule(最大流Dinic算法)
- iOS常用设计模式——原型模式
- 字符串排列
- wamp 中添加虚拟主机
- iOS_UI_1_UIView
- 【JavaScript】DOM操作下拉框
- 数据库面试题
- 下载资源
- java异常处理——基础篇
- iOS学习总结之UI框架UI之文本输入控件( UITextField)
- UFFS文件系统使用心得