I am trying to generate permutation numbers using code I adapted from functioning C++. The Python version errs with
Line 42: RuntimeError: maximum recursion depth exceeded
for the input [5,4,6,2]
.
class Solution:
# @param {integer[]} nums
# @return {integer[][]}
def permute(self, nums):
result = []
if len(nums) == 0:
return result
if len(nums) == 1:
result.append(nums)
return result
if len(nums) == 2:
result.append(nums)
a = nums[0]
b = nums[1]
newrow = [b,a]
result.append(newrow)
return result
for i in range(0, len(nums)):
temp = nums
fixvalue = temp[i]
del(temp[i])
tempresult = self.permute(temp)
for j in range(0, len(tempresult)):
tempresult[j].insert(0,fixvalue)
result.append(tempresult[j])
return result