func permute(strInput:String,l:Int,r:Int){ var inputCharacter = Array(strInput) if ( l==r){ print(strInput) }else{ for var i in l..<r{ // Swapping done inputCharacter.swapAt(l, i); // Recursion called permute(strInput: String(inputCharacter), l: l+1, r: r); //backtrack inputCharacter.swapAt(l, i); } } } This is how you can use this method: let str = "ABC
permute(strInput: str, l…