📜  Python – 查找 k 最小元素的索引

📅  最后修改于: 2022-05-13 01:55:23.298000             🧑  作者: Mango

Python – 查找 k 最小元素的索引

有时,在使用Python列表时,我们可能会遇到希望找到 K 个最小元素的索引的问题。此任务可能发生在许多领域,例如 Web 开发和使用数据库时。我们有时可能只需要找到它们的索引。让我们讨论一种在列表中查找 K 个最小元素的索引的方法。

使用sorted() + lambda + 列表切片

可以使用上述功能的组合来执行此任务。在此sorted()可用于以需要在前端获取 K 最小元素的方式获取容器,然后可以使用列表切片计算索引。

# Python3 code to demonstrate working of
# Smallest K elements indices
# using sorted() + lambda + list slicing
  
# initialize list
test_list = [5, 6, 10, 4, 7, 1, 19]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initialize K
K = 3
  
# Smallest K elements indices
# using sorted() + lambda + list slicing
res = sorted(range(len(test_list)), key = lambda sub: test_list[sub])[:K]
  
# printing result
print("Indices list of min K elements is : " + str(res))
输出 :
The original list is : [5, 6, 10, 4, 7, 1, 19]
Indices list of min K elements is : [5, 3, 0]