permutation.c

来自「自己做的常用库和实现的数据结构。public domain.」· C语言 代码 · 共 28 行

C
28
字号
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int count = 0;
void permutation(char per[], int m, int len)
{   
    int i;
    char tmp;
    if (m < len - 1){
        permutation(per, m + 1, len);
        for (i = m + 1; i < len; i++){
            tmp = per[m]; per[m] = per[i]; per[i] = tmp;
            permutation(per, m + 1, len);
            tmp = per[m]; per[m] = per[i]; per[i] = tmp;
        }
    }else{
        ++count;
        printf("%s ", per);
    }
}
int main(void)
{
    char per[] = "ABCD";
    permutation(per, 0, strlen(per));
    printf("The total: %d" , count);
    return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?