LeetCode第215题: 数组中的第K个最大元素
- 先排序, 再寻找
class Solution:
def findKthLargest(self, nums: List[int], k: int) -> int:
nums.sort()
i = len(nums) - 1
while k > 1:
i -= 1
k -= 1
return nums[i]
LeetCode第217题: 存在重复元素
- 与去重后的比较长度即可
class Solution:
def containsDuplicate(self, nums: List[int]) -> bool:
if len(nums) != len(set(nums)):
return True
return False
LeetCode第230题: 二叉搜索树中第k个元素
- 中序遍历, 把结果放到列表里
- 找出结果即可
class Solution:
def kthSmallest(self, root: TreeNode, k: int) -> int:
result = []
self.dfs(root, result)
return result[k - 1]
def dfs(self, root, result):
if root == None:
return ;
self.dfs(root.left, result)
result.append(root.val)
self.dfs(root.right, result)