全排列不重复
来源:互联网 发布:ubuntu添加拼音输入法 编辑:程序博客网 时间:2024/05/03 18:21
#include<iostream>
#include<stdio.h>
#include<algorithm>
using namespace std;
int h[256]={0};
#define N 100
//char *indexss; //保存上一个排列的值(重复的排列是相邻的)
void quanpaiWithOutRepety(char a[],int len,int index)
{
char c='/0';
if(index==len)
{
//if(strcmp(indexss,a)!=0) cout<<a<<endl; //与上一个排列结果进行比较,如果不相同,就输出。
// strcpy(indexss,a); //保存当前排列
cout<<a<<endl;
}
else
{
for(int i=index;i<len;i++)
{
//if(i!=index&&a[i]==a[index]&&h[a[i]]>1)
// continue;
// else if(i!=index&&a[i]==a[index]&&h[a[i]]<=1)
// h[a[i]]++;
if(c!=a[i])
{
c=a[i];
swap(a[i],a[index]);
quanpaiWithOutRepety(a,len,index+1);
swap(a[i],a[index]);
}
}
}
}
int main()
{
char a[]={'a','b','c','\0'};
int len=sizeof(a)/sizeof(char)-1;
sort(a,a+len);
//indexss=(char*)malloc(N*sizeof(char));
quanpaiWithOutRepety(a,len,0);
system("pause");
return 0;
}
#include<stdio.h>
#include<algorithm>
using namespace std;
int h[256]={0};
#define N 100
//char *indexss; //保存上一个排列的值(重复的排列是相邻的)
void quanpaiWithOutRepety(char a[],int len,int index)
{
char c='/0';
if(index==len)
{
//if(strcmp(indexss,a)!=0) cout<<a<<endl; //与上一个排列结果进行比较,如果不相同,就输出。
// strcpy(indexss,a); //保存当前排列
cout<<a<<endl;
}
else
{
for(int i=index;i<len;i++)
{
//if(i!=index&&a[i]==a[index]&&h[a[i]]>1)
// continue;
// else if(i!=index&&a[i]==a[index]&&h[a[i]]<=1)
// h[a[i]]++;
if(c!=a[i])
{
c=a[i];
swap(a[i],a[index]);
quanpaiWithOutRepety(a,len,index+1);
swap(a[i],a[index]);
}
}
}
}
int main()
{
char a[]={'a','b','c','\0'};
int len=sizeof(a)/sizeof(char)-1;
sort(a,a+len);
//indexss=(char*)malloc(N*sizeof(char));
quanpaiWithOutRepety(a,len,0);
system("pause");
return 0;
}
- 全排列不重复
- 全排列 不重复算法
- POJ1731解题报告 不重复全排列
- 求不重复数据的全排列
- 不重复数列的全排列
- poj1731输出不重复全排列
- 【day-6】全排列-不重复
- 如何得到有重复元素的不重复全排列
- POJ 1731 Orders(不重复全排列)
- <LeetCode> 题15:全排列(不带重复元素)
- 按顺序输出不重复的全排列
- 非重复生成全子集组合排列(含重复数字时,生成不重复全子集组合排列)
- 全排列算法:不含重复元素,包含重复元素,字母序排列
- 重复全排列
- 无重复全排列
- 不可重复全排列。。。。
- 全排列-去重复
- 无重复全排列
- Microsoft SQL server 2008 安装未取得权限操作
- UNIX环境高级编程-环境配置
- C++ const 参数 成员函数 规则
- C#调用非托管dll debug问题
- 周鸿祎在360新员工入职培训上的讲话
- 全排列不重复
- 上海公司面试-试题宝典
- Unix目录结构的来历
- Unix服务器是否已经过时了?
- AsyncTask的用法
- 甲骨文全球大会揭示Oracle Solaris 11
- jBox2D v2.0.1 用户手册
- Hibernate详解(1)——总体框架
- 眼不见为净!傲游浏览器过滤功能强力推荐