## Q. Program to find all the permutations of a string.

To solve this problem, we need to understand the concept of backtracking.

According to the backtracking algorithm:

• Fix a character in the first position and swap the rest of the character with the first character. Like in ABC, in the first iteration three strings are formed: ABC, BAC, and CBA by swapping A with A, B and C respectively.
• Repeat step 1 for the rest of the characters like fixing second character B and so on.
• Now swap again to go back to the previous position. E.g., from ABC, we formed ABC by fixing B again, and we backtrack to the previous position and swap B with C. So, now we got ABC and ACB.
• Repeat these steps for BAC and CBA, to get all the permutations.

### Algorithm

1. Define a string.
2. Fix a character and swap the rest of the characters.
3. Call the generatePermutation() for rest of the characters.
4. Backtrack and swap the characters again.

## Python

Output:

```All the permutations of the string are:
ABC
ACB
BAC
BCA
CBA
CAB
```

## C

Output:

```All the permutations of the string are:
ABC
ACB
BAC
BCA
CBA
CAB
```

## JAVA

Output:

```All the permutations of the string are:
ABC
ACB
BAC
BCA
CBA
CAB
```

## C#

Output:

```All the permutations of the string are:
ABC
ACB
BAC
BCA
CBA
CAB
```

## PHP

Output:

```All the permutations of the string are:
ABC
ACB
BAC
BCA
CBA
CAB
```

Next TopicPrograms List