欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【LeeCode 中等 堆 python3】 215. 数组中的第K个最大元素

程序员文章站 2024-02-03 10:14:34
想要看更加舒服的排版、更加准时的推送关注公众号“不太灵光的程序员”每日八点有干货推送,微信随时解答你的疑问151 翻转字符串里的单词 python3中等 字符串给定一个字符串,逐个翻转字符串中的每个单词。示例 1:输入: “the sky is blue”输出: “blue is sky the”示例 2:输入: " hello world! "输出: “world! hello”解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:输入: ....

想要看更加舒服的排版、更加准时的推送
关注公众号“不太灵光的程序员”
每日八点有干货推送,微信随时解答你的疑问

215. 数组中的第K个最大元素 python3

中等 分治算法

在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。

示例 1:

输入: [3,2,1,5,6,4] 和 k = 2
输出: 5

示例 2:

输入: [3,2,3,1,2,4,5,5,6] 和 k = 4
输出: 4
说明:

你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。

from typing import List


# 80%
# 执行用时:44 ms
# 内存消耗:14.3 MB
class Solution:
    def findKthLargest(self, nums: List[int], k: int) -> int:
        return sorted(nums)[-k]


s = Solution()
nums = [3, 2, 3, 1, 2, 4, 5, 5, 6]
k = 4
ret = s.findKthLargest(nums, k)
print(ret)

本文地址:https://blog.csdn.net/qq_23934063/article/details/107551361