Can somebody please tell me, how does the above code for permutation
works(Algorithms behind) please?

On Mon, Aug 2, 2010 at 4:31 AM, bujji <[email protected]> wrote:

>
> Here is simple code to generate permutations
>
> #include "stdafx.h"
>
> #include<stdio.h>
>
>  int Permute( char *, int);
>
> int PrintArray();
>
> int swap(char *, int);
>
> char A[]={'1','2','3','4','5','6','7','8'};
>
>
>
> main( )
>
> {
>
>
>      Permute(A,sizeof(A)/sizeof(char));
>
>      return 0;
>
> }
>
>
>
> int Permute(char * a, int n)
>
> {      if(n==1)
>
>      {     PrintArray();
>
>            return 0;
>
>      }
>
>      int i=0;
>
>      for(i=0; i<n;i++)
>
>      {
>
>            swap(a,i);
>
>            Permute(a+1,n-1);
>
>            swap(a,i);
>
>      }
>
> }
>
>
>
> int PrintArray()
>
> {
>
>      int i=0;
>
>      static int Number_of_Solutions=0;
>
>      printf("\n  Conf: %-4d  ",++Number_of_Solutions);
>
>      for(i=0;i<sizeof(A);i++)
>
>            printf("%c ",A[i]);
>
>
>
>      return 0;
>
> }
>
>
>
> int swap( char *a, int i)
>
> {
>
>      if(i<0)
>
>            return -1;
>
>      int temp=*a;
>
>      *a=a[i];
>
>      a[i]=temp;
>
>
>
>      return 0;
>
> }
>
>
> Regards,
> Bujji
>
>
> On Aug 1, 4:00 pm, UMESH KUMAR <[email protected]> wrote:
> >  Write a C  code for generate all possible Permutation
> >  as:- 1 2 3
> > Total no. of Per=6
> > also print all permutation
> > as:- 1 2 3
> >        1 3 2
> >         2 1 3
> >        2 3 1
> >        3 1 2
> >       3 2 1
> > if inpute is 1 2 3 2
> >      total no of permutation = 12
>
> --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<algogeeks%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to