Function permute() is called 1 time
Before 1st swap i:0 l:0
Permute() is being called -
Function permute() is called 2 time
Before 1st swap i:1 l:1
Permute() is being called -
Function permute() is called 3 time
ABC
Before 2nd swap i:1 l:1
Before 1st swap i:2 l:1
Permute() is being called -
Function permute() is called 4 time
ACB
Before 2nd swap i:2 l:1
Before 2nd swap i:0 l:0
Before 1st swap i:1 l:0
Permute() is being called -
Function permute() is called 5 time
Before 1st swap i:1 l:1
Permute() is being called -
Function permute() is called 6 time
BAC
Before 2nd swap i:1 l:1
Before 1st swap i:2 l:1
Permute() is being called -
Function permute() is called 7 time
BCA
Before 2nd swap i:2 l:1
Before 2nd swap i:1 l:0
Before 1st swap i:2 l:0
Permute() is being called -
Function permute() is called 8 time
Before 1st swap i:1 l:1
Permute() is being called -
Function permute() is called 9 time
CBA
Before 2nd swap i:1 l:1
Before 1st swap i:2 l:1
Permute() is being called -
Function permute() is called 10 time
CAB
Before 2nd swap i:2 l:1
Before 2nd swap i:2 l:0