0
点赞
收藏
分享

微信扫一扫

3.26leecode912. 排序数组

三维控件研究 2022-03-26 阅读 29

 912. 排序数组

快速排序+随机选取,不加随机的话如果序列原本就是排好序的会超时

class Solution:
    def sortArray(self, nums: List[int]) -> List[int]:
        def qsort(nums,l,r):
            if l<r:
                n = random.randint(l,r)
                nums[l],nums[n]=nums[n],nums[l]
                cur = nums[l]
                left, right = l,r
                while l != r:
                    while l<r and nums[r]>=cur:
                        r -= 1
                    nums[l]=nums[r]
                    while l<r and nums[l]<=cur:
                        l += 1
                    nums[r]=nums[l]
                nums[l]=cur
                qsort(nums,left,l-1)
                qsort(nums,l+1,right)
        qsort(nums,0,len(nums)-1)
        return nums

 

举报

相关推荐

0 条评论