程序,在Python中找到大小为k的字典上最小的子序列
假设我们有一个称为nums和另一个值k的数字列表,我们必须找到字典上大小为k的最小子序列。
因此,如果输入像nums=[2,3,1,10,3,4]k=3,那么输出将是[1、3、4]
范例(Python)
让我们看下面的实现以更好地理解-
class Solution: def solve(self, nums, k): l, r = len(nums), k - 1 out = [] for j in range(k): mn = nums[~r] for i in range(r, l): if mn >= nums[~i]: mn = nums[~i] l = i r -= 1 out.append(mn) return out ob = Solution() nums = [2, 3, 1, 10, 3, 4] k = 3 print(ob.solve(nums, k))
输入值
[2, 3, 1, 10, 3, 4], 3输出结果
[1, 3, 4]