Update 0031.下一个排列.md

python版本剪枝去重,避免对递减序列的比较
This commit is contained in:
roylx
2023-01-10 15:18:11 -07:00
committed by GitHub
parent a7afca36d7
commit d010b09dbd

View File

@ -168,7 +168,8 @@ class Solution:
Do not return anything, modify nums in-place instead. Do not return anything, modify nums in-place instead.
""" """
length = len(nums) length = len(nums)
for i in range(length - 1, -1, -1): for i in range(length - 2, -1, -1): # 从倒数第二个开始
if nums[i]>=nums[i+1]: continue # 剪枝去重
for j in range(length - 1, i, -1): for j in range(length - 1, i, -1):
if nums[j] > nums[i]: if nums[j] > nums[i]:
nums[j], nums[i] = nums[i], nums[j] nums[j], nums[i] = nums[i], nums[j]