OJ 系列之从M个不同字符中任取N个字符的所有组合
来源:互联网 发布:英伦对决影评知乎 编辑:程序博客网 时间:2024/05/01 04:37
题目如下:
#include <string.h>#include <stdio.h>#include <stdlib.h>#define MAXLENGTH 10000//组合问题(从M个不同字符中任取N个字符的所有组合) void combine(char *source,char *result,int n){ if (1==n) { while (*source) { printf("%s%c ",result,*source++); } }else { int i,j; for (i=0;source[i]!='\0';i++); for (j=0;result[j]!='\0';j++); for (;i>=n;i--) { result[j]=*source++; result[j+1]='\0'; combine(source,result,n-1); } }}int main(int argc, char* argv[]){ char source[MAXLENGTH]; int n = 0; char *result = NULL; scanf("%s %d",&source,&n); int len = strlen(source); /*1.输入参数有误*/ if(n>=len||n<=0) { printf("ERROR\n"); return 0; } /*2.初始化*/ result = (char *)malloc(sizeof(char)*n+1); memset(result,'\0',sizeof(result)); /*3.排列组合*/ combine(source,result,n); //free(result); return 0;}
0 0
- OJ 系列之从M个不同字符中任取N个字符的所有组合
- //组合问题(从M个不同字符中任取N个字符的所有组合)
- 组合问题(从M个不同字符中任取N个字符的所有组合)
- 组合问题(从M个不同字符中任取N个字符的所有组合)
- 组合问题(从M个不同字符中任取N个字符的所有组合)
- 从M个不同字符中任取N个字符的所有组合
- 从m个字符选出n个的所有组合
- 组合问题:从M个字符取N个不同字符所有组合
- 打印n个字符的所有组合
- 求n个字符的长度为m的组合
- n个字符的m长度的组合
- 递归实现n个不同字符的所有全排列
- m个字符的n个字符排列
- m个字符的n个字符排列
- 组合(从长度为n的字符串中取m个字符)---java两种实现方法
- 使用回溯法求所有从n个元素中取m个元素的组合
- 20150915华为软件笔试题-从m个不同字母中任取n个字目的组合
- C++求n个字符的长度为m的组合
- HDU 5438 Ponds (拓扑排序应用+DFS)
- ng-class用法
- 前台向后台传递中文参数,防止乱码
- FAT12中,如何定位大于一个扇区(512B)的文件内容
- [BZOJ 3040] 最短路(road) · 堆优化dijkstra
- OJ 系列之从M个不同字符中任取N个字符的所有组合
- c++ primer 学习笔记-第十四章
- CentOS下ifconfig eth0:unknown interface:no such device
- Base64编码与图片互转
- Object类中hashCode()和equals()方法详解(附图)
- 从dra中导出pad等文件
- 数据结构之线段树
- 眼前的迷茫
- 如何成为一个.Net工程师