【Leetcode】排序相关
2021-06-06 15:04
                         标签:span   排序   代码   tco   kth   最大   而不是   quic   lse    【Leetcode-215】 一、题目:数组中的第k大元素   在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 二、代码:   【Leetcode】排序相关 标签:span   排序   代码   tco   kth   最大   而不是   quic   lse    原文地址:https://www.cnblogs.com/EstherLjy/p/14608649.htmldef findKthLargest(self, nums: List[int], k: int) -> int:
        def quick_sort(arr, l, r, k):
            # if l >= r:
            #     return
            item = arr[l]
            i, j = l, r
            while i  j:
                while arr[j] and i  j:
                    j -= 1
                if i  j:
                    arr[i], arr[j] = arr[j], arr[i]
                while arr[i] >= item and i  j:
                    i += 1
                if i  j:
                    arr[i], arr[j] = arr[j], arr[i]
            if i == k-1:
                return arr[i]
            elif i :
                return quick_sort(arr, i+1, r, k)
            else:
                return quick_sort(arr, l, i-1, k)
            
        n =  len(nums)
        res = quick_sort(nums, 0, n - 1, k)
        return res
上一篇:Springmvc的REST风格
下一篇:C++之前言回忆