Подмножества строки - PullRequest
       3

Подмножества строки

0 голосов
/ 24 сентября 2019

Посмотрите на этот код. Я использовал этот код для создания всех перестановок {A, C, G, t}, но не смог сделать все различные перестановки от одной до семи букв, которые могут быть получены буквами {A,С, G, T}.какие изменения нужно

 void swap(char *x, char *y) 
 { 
   char temp; 
   temp = *x; 
   *x = *y; 
   *y = temp; 
 } 

 void permute(char *a, int l, int r) 
{ 
   int i; 
    if (l == r) 
      printf("%s\n", a); 
   else
  { 
      for (i = l; i <= r; i++) 
     { 
        swap((a+l), (a+i)); 
        permute(a, l+1, r); 
        swap((a+l), (a+i)); //backtrack 
     } 
  } 
} 

int main() 
  { 
   char str[] = {'A','C','G','T'}; 
   int n = 7; 
   permute(str, 0, n-1); 
   return 0; 
 } 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...