栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > C++面试题库

、组合问题(从M个不同字符中任取N个字符的所有组合)

、组合问题(从M个不同字符中任取N个字符的所有组合)

void find(char *source, char *result, int n) {

     if(n==1) {

         while(*source)

            printf(“%s%cn”, 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] = ‘’;

              find(source, result, n-1);

         }

     }

}

 

int main(int argc, char* argv[]) {

     int const n = 3;

     char *source = “ABCDE”, result[n+1] = {0};

     if(n>0 && strlen(source)>0 && n<=strlen(source))

         find(source, result, 3);

}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/265502.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号