1. 程式人生 > >全網最簡潔全排列源代碼(遞歸)

全網最簡潔全排列源代碼(遞歸)

全排列遞歸

整體思路為技術分享圖片
#include<stdio.h>
#include<string.h>
void f(char* s,int k)
{
for(int i=k;i<strlen(s);i++)
{
char t=s[k];
s[k]=s[i];
s[i]=t;
f(s,k+1);
char o=s[k];
s[k]=s[i];
s[i]=o;
}
if(k==strlen(s)-1)
{
puts(s);
}
}
main()
{
int k=0;
char s[10]="ABC";
f(s,k);
return 0;
}

全網最簡潔全排列源代碼(遞歸)