diff --git a/25. Recursion 3/Assignment (25).ipynb b/25. Recursion 3/Assignment (25).ipynb index c85c3c9..a33b885 100644 --- a/25. Recursion 3/Assignment (25).ipynb +++ b/25. Recursion 3/Assignment (25).ipynb @@ -254,26 +254,37 @@ "metadata": {}, "outputs": [], "source": [ - "def permutation(str):\n", - " if len(str) == 0:\n", - " return \n", - " \n", - " output = []\n", - " for i in range(len(str)):\n", - " start = str[i]\n", - " \n", - " \n", - " remaining = str[:i] + str[i+1:] \n", - " output.append(start + remaining )\n", - " \n", - " remaining = str[i+1:] + str[:i]\n", - " output.append(start+remaining)\n", - "\n", - "\n", - "string = input()\n", - "ans = permutations(string)\n", - "for s in ans:\n", - " print(s)" + + + "def permutations(string):\n", + + "if len(string)==1:\n", + + "return [string]\n", + + "output=[]\n", + "for i in range(len(string)):\n", + + "curr = string[i]\n", + "remaining = string[0:i]+string[i+1:]\n", + + "smallans = permutations(remaining)\n", + + + "for el in smallans:\n", + "output.append(curr+el)\n", + + "return output\n", + + "string = input()\n", + "ans = permutations(string)\n", + + "for s in ans:\n" + "print(s)\n" + + + + ] }, {