下一个排列,更多的python-ish方式

时间:2016-10-15 21:48:47

标签: python

我已经解决了LeetCode的下一个排列问题。但是,我现在更关注代码的样式方面。特别是,我是初学python代码,并想问我如何使我的代码更python-ish(即使用更多的python工具,例如切片,内置函数):

def nextPermutation(nums):
    i = len(nums) - 1
    while i > 0 and nums[i] <= nums[i-1]:
        i -= 1
    if i == 0:
        nums.reverse()
    else:
        j = i
        i -= 1
        while j < len(nums) and nums[j] > nums[i]:
            j += 1
        j -= 1
        nums[j], nums[i] = nums[i], nums[j]
        nums[i+1:] = nums[i+1:][::-1]

0 个答案:

没有答案