跳到主要内容

1673.找出最具竞争力的子序列

链接:1673.找出最具竞争力的子序列
难度:Medium
标签:栈、贪心、数组、单调栈
简介:给你一个整数数组 nums 和一个正整数 k ,返回长度为 k 且最具 竞争力 的 nums 子序列。

题解 1 - python

  • 编辑时间:2024-05-24
  • 执行用时:149ms
  • 内存消耗:28.95MB
  • 编程语言:python
  • 解法介绍:单调栈。
class Solution:
def mostCompetitive(self, nums: List[int], k: int) -> List[int]:
res = []
for i in range(len(nums)):
while res and res[-1] > nums[i] and len(nums) - i > k - len(res):
res.pop()
res.append(nums[i])
return res[:k]