全排列问题
来源:互联网 发布:大华网络硬盘录像机nvr 编辑:程序博客网 时间:2024/05/21 15:44
#include <stdio.h>
void CombNumber(int a[], int m, int n, int h, int *count);
int main()
{
int m, n;
int count = 0;
static int Res[100];
printf("Please input the number m and n :/n");
scanf("%d%d", &m, &n);
printf("The combination number is :/n");
CombNumber(Res, m, n, 0, &count);
printf("The res has %d ways:/n", count);
puts("");
return 0;
}
void CombNumber(int Res[], int m, int n, int h, int *count)
{
int i = 0, j = 0, k = 0;
if(n == h) //条件成立打印结果
{
(*count)++;
for(i = 0; i <= h; ++i)
{
printf("%d", Res[i]);
}
printf("/b/t");
return;
}
for(j = 1; j <= m; ++j)
{
for(k = 0; k < h; ++k)
{
if(j == Res[k] /*|| Res[k] > j*/) //判断当前数字是否已在结果数组中
{
break;
}
}
if(k >= h)
{
Res[h] = j;
CombNumber(Res, m, n, h + 1, count);
}
}
}
/*
Please input the number m and n :
5 3
The combination number is :
123 124 125 132 134 135 142 143 145 152
153 154 213 214 215 231 234 235 241 243
245 251 253 254 312 314 315 321 324 325
341 342 345 351 352 354 412 413 415 421
423 425 431 432 435 451 452 453 512 513
514 521 523 524 531 532 534 541 542 543
The res has 60 ways:
Press any key to continue
*/
- 全排列问题
- 全排列问题
- 字符串全排列问题
- 全排列问题
- 字符串全排列问题
- 全排列问题实现
- 全排列问题
- 全排列问题
- 递归 全排列 问题
- 全排列问题
- 全排列问题
- 全排列问题浅谈
- 全排列问题
- 全排列问题
- 全排列问题
- 全排列问题
- 全排列问题(0907)
- 全排列问题
- Android开发入门之二--Android编译环境搭建(Vmawre+Ubuntu10.04+SecureCRT)
- 今天的决定
- 配置热备份
- 链表常见的一些算法
- 如何读取数据效率高?
- 全排列问题
- saber安装说明
- 国际:什么是程序员的优秀品质?
- 2011年NAND闪存的七大趋势
- 第一个C++程序
- AS3 alpha visible属性
- Spring AOP的底层实现技术---CGLib动态代理
- MyEclipse8.5如何配置和使用SVN
- 关于Java数组的一点想法