📌  相关文章
📜  Python|元素之间的最大距离

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

Python|元素之间的最大距离

有时,在使用列表时,我们可能会遇到需要找到重复出现的元素之间的最大距离的问题。这类问题可以应用在竞争性编程和 Web 开发领域。让我们讨论一下可以执行此任务的特定方式。

方法:使用循环 + max() + defaultdict() + enumerate()
上述功能的组合可用于执行此特定任务。在此,我们首先使用 defaultdict() 用 list 初始化 temp dict。迭代使用 enumerate() 和 max() 执行列表中所有相似数字之间的最大距离。

# Python3 code to demonstrate 
# Maximum distance between elements
# using max() + enumerate() + loop + defaultdict()
from collections import defaultdict
  
# Initializing list
test_list = [4, 5, 6, 4, 6, 3]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Maximum distance between elements
# using max() + enumerate() + loop + defaultdict()
temp = defaultdict(list)
for idx, ele in enumerate(test_list):
    temp[ele].append(idx)
res = max(temp[ele][-1]-temp[ele][0] for ele in temp)
  
# printing result 
print ("Maximum distance between same element is : " + str(res))
输出 :
The original list is : [4, 5, 6, 4, 6, 3]
Maximum distance between same element is : 3