字符串全排列
来源:互联网 发布:单片机delay延时函数 编辑:程序博客网 时间:2024/05/27 00:33
http://blog.163.com/yunfei_lei@126/blog/static/140864561201181694915129/
/*设R={r1,r2,...,rn}是要进行排列的n个元素,Ri=R-{ri}.Perm(X)表示在全排列Perm(X)的每一个排列前加上前缀ri得到的排列。(1)当n=1时,Perm(R)=(r),其中r是集合R中唯一的元素;(2)当n>1时,Perm(R)可由(r1)+Perm(R1),(r2)+Perm(R2),...,(rn)+Perm(Rn)构成。此算法就是按照上述思想来设计的。不难想出,次算法使用递归思想比较容易实现。设Perm(list,k,m)递归地产生所有前缀是list[0:k-1],且后缀是list[k:m]的全排列的所有排列。那么调用算法Perm(list,0,n-1)则产生list[0:n-1]的全排列。*/#include<iostream>#include<vector>using namespace std;vector<int> ivec;void Perm(char s[], int k, int m){if(k == m)cout<<s<<endl;for(int i = k; i <= m; i++){// 去重if(s[i] == s[k] && i != k)continue;swap(s[k], s[i]);Perm(s, k+1, m);swap(s[k], s[i]);}}int main(){char str[] = "abc";Perm(str, 0, strlen(str) - 1);int a[4]={1, 2, 3,4};int *ptr = (int *)(&a + 1);cout<<*(ptr - 1); return 0;}
0 0
- 字符串的全排列
- 字符串的全排列
- 字符串全排列问题
- 字符串全排列
- 字符串全排列问题
- 字符串全排列
- 求字符串全排列
- 求字符串全排列
- 字符串的全排列
- 字符串全排列代码
- 字符串全排列
- 字符串全排列
- 字符串全排列
- 字符串的全排列
- 字符串全排列
- 求字符串全排列
- 字符串全排列
- 字符串的全排列
- 高德地图api
- JavaScript学习(一)之基础篇
- android 对多点触碰缩放imageview的大小,和手势滑动移动view位置的思考
- 面向对象的原则之开放-封闭原则
- C语言模拟实现职工信息管理系统
- 字符串全排列
- android 部分手机拍照后在imageView中显示预览图片被旋转的问题
- Vue.js 实践笔记
- 肯尼亚央行:利率上限可能打击商业银行贷款
- MyBatis中#{}和${}的区别详解
- 学习Android CoordinatorLayout(一)
- android Sqlite数据库使用方法小例
- laravel - 中间件使用
- yii中jquery全选 全不选 全选全部选 反选