Backtracking

Poornima
Feb 20, 2022

Given a string , print different permutations of the string

Points to remember :

  1. If we are going through all the permutations , it is going to take O(n!) time excluding all the other processing time

In place approach :

We keep lock the left side of the string and keep swapping the right parts.

Complexity =O(n! * n) (assuming the time to print is O(1) ) else it is O(n! *n) (where the extra O(n) is to print the permutation)

Using extra memory :

Complexity =O(n! * n) (assuming the time to print is O(1) ) else it is O(n! *n +O(n!*n) ie. the time create the new string (each erase operation is O(n) )+ time taken to print each of the permutation.

Backtracking Complexity examplehttps://www.geeksforgeeks.org/rat-in-a-maze-backtracking-2/?ref=lbp

--

--