#include <iostream>
#include <vector>
#include <stdio.h>
#include <string.h>
using namespace std;
void Combination(char* string, int number, vector<char>& result)
{
if(number == 0)
{
vector<char>::iterator iter = result.begin();
for(; iter < result.end(); ++ iter)
printf("%c", *iter);
printf("\n");
return;
}
if(*string == '\0')
return;
result.push_back(*string);
Combination(string + 1, number - 1, result);
result.pop_back();
Combination(string + 1, number, result);
}
void Combination(char* string)
{
if(string == NULL)
return;
int length = strlen(string);
vector<char> result;
for(int i = 1; i <= length; ++ i)
{
Combination(string, i, result);
}
}
int main() {
char a[]="abc";
Combination(a);
return 0;
}
找字符串的所有组合
最新推荐文章于 2017-07-18 22:41:22 发布